{"_id":"@core-tecnologias-empresariales/core-telemetry","name":"@core-tecnologias-empresariales/core-telemetry","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@core-tecnologias-empresariales/core-telemetry","version":"0.1.0","description":"Observabilidad técnica (duración, contadores) para el ecosistema Core Tecnología Empresarial. Sin acoplarse a un proveedor específico.","license":"UNLICENSED","publishConfig":{"access":"public"},"type":"module","main":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":"./dist/index.js"},"devDependencies":{"typescript":"^5.7.0","@types/node":"^20.14.0"},"scripts":{"build":"tsc -p tsconfig.json","test":"tsc -p tsconfig.json && node --test dist"},"_id":"@core-tecnologias-empresariales/core-telemetry@0.1.0","_integrity":"sha512-24mbSTyaYqOw4XllKzTyVelEPiOvV3jFHsf2AgWtLSgimOhHiOOmvIPuDEj127ROp/NxqlthBsjuqKeH6ZnOvA==","_resolved":"C:\\Users\\Administrador\\AppData\\Local\\Temp\\0d2dbacbc5cf212bfa1b6353bf823d07\\core-tecnologias-empresariales-core-telemetry-0.1.0.tgz","_from":"file:core-tecnologias-empresariales-core-telemetry-0.1.0.tgz","_nodeVersion":"20.20.0","_npmVersion":"11.11.0","dist":{"integrity":"sha512-24mbSTyaYqOw4XllKzTyVelEPiOvV3jFHsf2AgWtLSgimOhHiOOmvIPuDEj127ROp/NxqlthBsjuqKeH6ZnOvA==","shasum":"37f08f51acb01ba18fed7585552f0898fd82e2cf","tarball":"https://registry.npmjs.org/@core-tecnologias-empresariales/core-telemetry/-/core-telemetry-0.1.0.tgz","fileCount":17,"unpackedSize":12302,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFVuIYAGTD7uHKtNMcE/JjSCRG0VG+KqZKo9PlqB3V/4AiBWRMVysnqCxJXwom7SCFIp7hiDoGAIn3ieh/1H06mFeA=="}]},"_npmUser":{"name":"balamchac","email":"marcelosazop@gmail.com"},"directories":{},"maintainers":[{"name":"balamchac","email":"marcelosazop@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/core-telemetry_0.1.0_1788053519471_0.4831557880609416"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-30T01:31:59.249Z","0.1.0":"2026-08-30T01:31:59.612Z","modified":"2026-08-30T01:31:59.868Z"},"maintainers":[{"name":"balamchac","email":"marcelosazop@gmail.com"}],"description":"Observabilidad técnica (duración, contadores) para el ecosistema Core Tecnología Empresarial. Sin acoplarse a un proveedor específico.","license":"UNLICENSED","readme":"# @core-tecnologias-empresariales/core-telemetry\n\nObservabilidad técnica del ecosistema Core Tecnología Empresarial. Responde **¿cómo se está comportando el sistema?** — distinto de `core-logging` (qué ocurrió) y `core-audit` (quién hizo qué).\n\n## Sin acoplarse a un proveedor\n\n`MetricsSink` es el punto de swap: `createConsoleMetrics()` es la implementación por defecto (JSON estructurado a stdout, igual que `core-logging`). Cuando el volumen lo justifique, un adapter real (OpenTelemetry, Prometheus, Grafana, Jaeger) implementa la misma interfaz sin tocar el código que la consume.\n\n## API\n\n```ts\nimport { createConsoleMetrics, withTiming } from \"@core-tecnologias-empresariales/core-telemetry\";\n\nconst metrics = createConsoleMetrics({ service: \"core-tributario\" });\n\n// Ejemplo CLAUDE.md §14: \"CorePyme → Core Tributario, duration: 245ms, status: success\"\nconst result = await withTiming(metrics, \"sii.request\", () => callSii(payload), { doctype: \"DTE\" });\n\nmetrics.incrementCounter(\"dte.rejected\"); // contador simple\n```\n\n`withTiming()` mide la duración de una función async, registra `outcome: \"success\"|\"error\"` automáticamente, y siempre re-lanza el error original — nunca lo absorbe.\n\n## Instalación\n\n```bash\npnpm add @core-tecnologias-empresariales/core-telemetry\n```\n\n## Desarrollo\n\n```bash\npnpm build\npnpm test\n```\n","readmeFilename":"README.md","_rev":"1-fab440414b705290f3b3f3e6e646bdbb"}