@mecanizou/telemetry-hub 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/.github/workflows/pull_request.yml +32 -32
  2. package/.github/workflows/release.yml +129 -129
  3. package/.prettierignore +4 -4
  4. package/DOCS_GUIDE.md +151 -0
  5. package/README.md +248 -0
  6. package/dist/check-if-is-working.js +1 -1
  7. package/dist/core/index.d.ts +2 -0
  8. package/dist/core/index.js +6 -0
  9. package/dist/core/logger.d.ts +13 -0
  10. package/dist/core/logger.js +123 -0
  11. package/dist/core/types.d.ts +43 -0
  12. package/dist/core/types.js +3 -0
  13. package/dist/index.d.ts +1 -1
  14. package/dist/index.js +2 -2
  15. package/dist/services/index.d.ts +1 -0
  16. package/dist/services/index.js +18 -0
  17. package/dist/services/telemetry/config.d.ts +20 -0
  18. package/dist/services/telemetry/config.js +113 -0
  19. package/dist/services/telemetry/external-service.d.ts +20 -0
  20. package/dist/services/telemetry/external-service.js +69 -0
  21. package/dist/services/telemetry/index.d.ts +3 -0
  22. package/dist/services/telemetry/index.js +20 -0
  23. package/dist/services/telemetry/sync-log-record-processor.d.ts +11 -0
  24. package/dist/services/telemetry/sync-log-record-processor.js +74 -0
  25. package/dist/sst/index.d.ts +1 -0
  26. package/dist/sst/index.js +18 -0
  27. package/dist/sst/middy/index.d.ts +1 -0
  28. package/dist/sst/middy/index.js +18 -0
  29. package/dist/sst/middy/middleware.d.ts +5 -0
  30. package/dist/sst/middy/middleware.js +172 -0
  31. package/dist/sst/telemetry.d.ts +3 -0
  32. package/dist/sst/telemetry.js +111 -0
  33. package/dist/telemetry/core/__tests__/logger-types.test.d.ts +1 -0
  34. package/dist/telemetry/core/__tests__/logger-types.test.js +325 -0
  35. package/dist/telemetry/core/__tests__/logger.test.d.ts +1 -0
  36. package/dist/telemetry/core/__tests__/logger.test.js +337 -0
  37. package/dist/telemetry/core/__tests__/tracer.test.d.ts +1 -0
  38. package/dist/telemetry/core/__tests__/tracer.test.js +330 -0
  39. package/dist/telemetry/core/index.d.ts +4 -0
  40. package/dist/telemetry/core/index.js +8 -0
  41. package/dist/telemetry/core/logger-types.d.ts +43 -0
  42. package/dist/telemetry/core/logger-types.js +3 -0
  43. package/dist/telemetry/core/logger.d.ts +13 -0
  44. package/dist/telemetry/core/logger.js +123 -0
  45. package/dist/telemetry/core/tracer-types.d.ts +50 -0
  46. package/dist/telemetry/core/tracer-types.js +3 -0
  47. package/dist/telemetry/core/tracer.d.ts +10 -0
  48. package/dist/telemetry/core/tracer.js +114 -0
  49. package/dist/telemetry/index.d.ts +3 -0
  50. package/dist/telemetry/index.js +20 -0
  51. package/dist/telemetry/sst/__tests__/telemetry.test.d.ts +1 -0
  52. package/dist/telemetry/sst/__tests__/telemetry.test.js +138 -0
  53. package/dist/telemetry/sst/index.d.ts +1 -0
  54. package/dist/telemetry/sst/index.js +18 -0
  55. package/dist/telemetry/sst/middy/index.d.ts +1 -0
  56. package/dist/telemetry/sst/middy/index.js +18 -0
  57. package/dist/telemetry/sst/middy/middleware.d.ts +5 -0
  58. package/dist/telemetry/sst/middy/middleware.js +157 -0
  59. package/dist/telemetry/sst/telemetry.d.ts +4 -0
  60. package/dist/telemetry/sst/telemetry.js +121 -0
  61. package/dist/telemetry/tsed/__tests__/config.test.d.ts +1 -0
  62. package/dist/telemetry/tsed/__tests__/config.test.js +146 -0
  63. package/dist/telemetry/tsed/__tests__/service.test.d.ts +1 -0
  64. package/dist/telemetry/tsed/__tests__/service.test.js +63 -0
  65. package/dist/telemetry/tsed/config.d.ts +26 -0
  66. package/dist/telemetry/tsed/config.js +166 -0
  67. package/dist/telemetry/tsed/index.d.ts +4 -0
  68. package/dist/telemetry/tsed/index.js +21 -0
  69. package/dist/telemetry/tsed/log-telemetry.d.ts +1 -0
  70. package/dist/telemetry/tsed/log-telemetry.js +196 -0
  71. package/dist/telemetry/tsed/service.d.ts +26 -0
  72. package/dist/telemetry/tsed/service.js +150 -0
  73. package/dist/telemetry/tsed/sync-log-record-processor.d.ts +11 -0
  74. package/dist/telemetry/tsed/sync-log-record-processor.js +74 -0
  75. package/dist/telemetry.d.ts +1 -0
  76. package/dist/telemetry.js +81 -0
  77. package/dist/tsed/config.d.ts +20 -0
  78. package/dist/tsed/config.js +113 -0
  79. package/dist/tsed/index.d.ts +3 -0
  80. package/dist/tsed/index.js +20 -0
  81. package/dist/tsed/log-telemetry.d.ts +1 -0
  82. package/dist/tsed/log-telemetry.js +81 -0
  83. package/dist/tsed/service.d.ts +24 -0
  84. package/dist/tsed/service.js +131 -0
  85. package/dist/tsed/sync-log-record-processor.d.ts +11 -0
  86. package/dist/tsed/sync-log-record-processor.js +74 -0
  87. package/package.json +72 -56
  88. package/release.config.js +23 -23
  89. package/vitest.config.ts +22 -0
@@ -1,32 +1,32 @@
1
- name: Pull Request
2
-
3
- on:
4
- pull_request:
5
- branches:
6
- - master
7
- - staging
8
-
9
- jobs:
10
- build:
11
- runs-on: ubuntu-latest
12
- steps:
13
- - name: Checkout code
14
- uses: actions/checkout@v2
15
- - name: Setup Node.js
16
- uses: actions/setup-node@v3
17
- with:
18
- node-version: '18.17.*'
19
- - name: Install npm dependencies
20
- run: npm install
21
- env:
22
- NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
23
- - name: Build
24
- run: npm run build
25
- - name: Unity Test
26
- run: npm test
27
- if_merged:
28
- if: github.event.pull_request.merged == true
29
- runs-on: ubuntu-latest
30
- steps:
31
- - run: |
32
- echo The PR was merged
1
+ name: Pull Request
2
+
3
+ on:
4
+ pull_request:
5
+ branches:
6
+ - master
7
+ - staging
8
+
9
+ jobs:
10
+ build:
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - name: Checkout code
14
+ uses: actions/checkout@v2
15
+ - name: Setup Node.js
16
+ uses: actions/setup-node@v3
17
+ with:
18
+ node-version: '18.17.*'
19
+ - name: Install npm dependencies
20
+ run: npm install
21
+ env:
22
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
23
+ - name: Build
24
+ run: npm run build
25
+ - name: Unity Test
26
+ run: npm test
27
+ if_merged:
28
+ if: github.event.pull_request.merged == true
29
+ runs-on: ubuntu-latest
30
+ steps:
31
+ - run: |
32
+ echo The PR was merged
@@ -1,129 +1,129 @@
1
- name: 🚀 Release
2
-
3
- on:
4
- push:
5
- branches:
6
- - master
7
- - alpha
8
- - beta
9
-
10
- jobs:
11
- release:
12
- runs-on: ubuntu-latest
13
- steps:
14
- - name: Checkout Repository
15
- uses: actions/checkout@master
16
- with:
17
- fetch-depth: 0
18
- persist-credentials: false
19
-
20
- - name: Send Slack init message
21
- uses: 8398a7/action-slack@v3
22
- with:
23
- status: "custom"
24
- custom_payload: |
25
- {
26
- text: "${{ github.event.repository.name }} build initiated",
27
- attachments: [{
28
- color: '#5a9eda',
29
- fields: [
30
- {
31
- title: 'Build initiated',
32
- value: "<https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}|${{ github.event.commits[0].message }}>",
33
- short: false,
34
- },
35
- {
36
- title: 'Branch',
37
- value: "${{ github.ref }}",
38
- short: true,
39
- },
40
- {
41
- title: 'Project',
42
- value: "${{ github.event.repository.name }}",
43
- short: true,
44
- },
45
- {
46
- title: 'Commit',
47
- value: "<${{ github.event.commits[0].url }}|${{ github.event.commits[0].id }}>",
48
- short: false,
49
- },
50
- {
51
- title: 'Author',
52
- value: "${{ github.actor }}",
53
- short: false,
54
- }
55
- ],
56
- }]
57
- }
58
- env:
59
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
60
- SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
61
- if: always()
62
- - name: Setup Node.js
63
- uses: actions/setup-node@v3
64
- with:
65
- node-version: "24.11.*"
66
-
67
- - name: Install dependencies
68
- run: npm install
69
- env:
70
- NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
71
- # - name: Run Tests
72
- # run: npm test
73
- - name: Build
74
- run: npm run build
75
-
76
- - name: Semantic Release
77
- if: success()
78
- run: npx semantic-release
79
- env:
80
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
81
- NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
82
-
83
- - name: Send Slack finish message
84
- uses: 8398a7/action-slack@v3
85
- with:
86
- status: "custom"
87
- custom_payload: |
88
- {
89
- text: '${{ github.event.repository.name }} build ${{ steps.set_build_details.outputs.status }}',
90
- attachments: [{
91
- color: '${{ steps.set_build_details.outputs.color }}',
92
- fields: [
93
- {
94
- title: 'Build ${{ steps.set_build_details.outputs.status }}',
95
- value: "<https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}|${{ github.event.commits[0].message }}>",
96
- short: false,
97
- },
98
- {
99
- title: 'Branch',
100
- value: "${{ github.ref }}",
101
- short: true,
102
- },
103
- {
104
- title: 'Project',
105
- value: "${{ github.event.repository.name }}",
106
- short: true,
107
- },
108
- {
109
- title: 'Commit',
110
- value: "<${{ github.event.commits[0].url }}|${{ github.event.commits[0].id }}>",
111
- short: false,
112
- },
113
- {
114
- title: 'Author',
115
- value: "${{ github.actor }}",
116
- short: false,
117
- },
118
- {
119
- title: 'Duration',
120
- value: "${{ steps.set_build_details.outputs.time }}",
121
- short: false,
122
- },
123
- ],
124
- }]
125
- }
126
- env:
127
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
128
- SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
129
- if: always()
1
+ name: 🚀 Release
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - master
7
+ - alpha
8
+ - beta
9
+
10
+ jobs:
11
+ release:
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - name: Checkout Repository
15
+ uses: actions/checkout@master
16
+ with:
17
+ fetch-depth: 0
18
+ persist-credentials: false
19
+
20
+ - name: Send Slack init message
21
+ uses: 8398a7/action-slack@v3
22
+ with:
23
+ status: "custom"
24
+ custom_payload: |
25
+ {
26
+ text: "${{ github.event.repository.name }} build initiated",
27
+ attachments: [{
28
+ color: '#5a9eda',
29
+ fields: [
30
+ {
31
+ title: 'Build initiated',
32
+ value: "<https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}|${{ github.event.commits[0].message }}>",
33
+ short: false,
34
+ },
35
+ {
36
+ title: 'Branch',
37
+ value: "${{ github.ref }}",
38
+ short: true,
39
+ },
40
+ {
41
+ title: 'Project',
42
+ value: "${{ github.event.repository.name }}",
43
+ short: true,
44
+ },
45
+ {
46
+ title: 'Commit',
47
+ value: "<${{ github.event.commits[0].url }}|${{ github.event.commits[0].id }}>",
48
+ short: false,
49
+ },
50
+ {
51
+ title: 'Author',
52
+ value: "${{ github.actor }}",
53
+ short: false,
54
+ }
55
+ ],
56
+ }]
57
+ }
58
+ env:
59
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
60
+ SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
61
+ if: always()
62
+ - name: Setup Node.js
63
+ uses: actions/setup-node@v3
64
+ with:
65
+ node-version: "24.11.*"
66
+
67
+ - name: Install dependencies
68
+ run: npm install
69
+ env:
70
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
71
+ # - name: Run Tests
72
+ # run: npm test
73
+ - name: Build
74
+ run: npm run build
75
+
76
+ - name: Semantic Release
77
+ if: success()
78
+ run: npx semantic-release
79
+ env:
80
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
81
+ NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
82
+
83
+ - name: Send Slack finish message
84
+ uses: 8398a7/action-slack@v3
85
+ with:
86
+ status: "custom"
87
+ custom_payload: |
88
+ {
89
+ text: '${{ github.event.repository.name }} build ${{ steps.set_build_details.outputs.status }}',
90
+ attachments: [{
91
+ color: '${{ steps.set_build_details.outputs.color }}',
92
+ fields: [
93
+ {
94
+ title: 'Build ${{ steps.set_build_details.outputs.status }}',
95
+ value: "<https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}|${{ github.event.commits[0].message }}>",
96
+ short: false,
97
+ },
98
+ {
99
+ title: 'Branch',
100
+ value: "${{ github.ref }}",
101
+ short: true,
102
+ },
103
+ {
104
+ title: 'Project',
105
+ value: "${{ github.event.repository.name }}",
106
+ short: true,
107
+ },
108
+ {
109
+ title: 'Commit',
110
+ value: "<${{ github.event.commits[0].url }}|${{ github.event.commits[0].id }}>",
111
+ short: false,
112
+ },
113
+ {
114
+ title: 'Author',
115
+ value: "${{ github.actor }}",
116
+ short: false,
117
+ },
118
+ {
119
+ title: 'Duration',
120
+ value: "${{ steps.set_build_details.outputs.time }}",
121
+ short: false,
122
+ },
123
+ ],
124
+ }]
125
+ }
126
+ env:
127
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
128
+ SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}
129
+ if: always()
package/.prettierignore CHANGED
@@ -1,5 +1,5 @@
1
- # Ignore artifacts:
2
- package-lock.json
3
- lib
4
- coverage
1
+ # Ignore artifacts:
2
+ package-lock.json
3
+ lib
4
+ coverage
5
5
  dist
package/DOCS_GUIDE.md ADDED
@@ -0,0 +1,151 @@
1
+ # 📚 Estrutura de Documentação
2
+
3
+ Este documento ajuda a navegar pela documentação do Telemetry Hub.
4
+
5
+ ## 🗺️ Mapa da Documentação
6
+
7
+ ```
8
+ 📦 telemetry-hub/
9
+
10
+ ├── 📄 README.md # ⭐ Início - Visão geral e quick start
11
+ ├── 📄 DOCS_GUIDE.md # 🗺️ Mapa de navegação da documentação
12
+
13
+ ├── 📁 src/telemetry/core/
14
+ │ ├── 📄 README.md # 🎯 Visão geral do Core
15
+ │ ├── 📄 LOGGING.md # 📝 Guia detalhado de logs padronizados
16
+ │ ├── 📄 TRACING.md # 🔍 Guia detalhado de traces padronizados
17
+ │ └── 📁 __tests__/
18
+ │ └── 📄 README.md # 🧪 Documentação dos testes (57 testes, 100% cobertura)
19
+
20
+ ├── 📁 src/telemetry/tsed/
21
+ │ ├── 📄 README.md # 🔷 Guia completo Tsed
22
+ │ ├── 📄 EXAMPLES.md # 💡 Exemplos práticos de uso Tsed
23
+ │ ├── 📄 IMPLEMENTATION_SUMMARY.md # 📝 Resumo da implementação Tsed
24
+ │ └── 📄 SST_COMPARISON.md # ⚖️ Comparação detalhada Tsed vs SST
25
+
26
+ └── 📁 src/telemetry/sst/
27
+ ├── 📄 README.md # 🟦 Guia completo SST/Middy
28
+ └── 📄 EXAMPLES.md # 💡 Exemplos práticos de uso SST
29
+ ```
30
+
31
+ ## 🎯 Por Objetivo
32
+
33
+ ### Quero começar a usar
34
+
35
+ 1. **Projeto Tsed:**
36
+ - [Tsed Quick Start](./src/telemetry/tsed/README.md)
37
+ - [Exemplos Práticos Tsed](./src/telemetry/tsed/EXAMPLES.md) 💡
38
+ - Copiar configuração de environment variables
39
+ - Adicionar `@TsedLogTelemetry()` nos controllers
40
+
41
+ 2. **Projeto SST:**
42
+ - [SST Quick Start](./src/telemetry/sst/README.md)
43
+ - [Exemplos Práticos SST](./src/telemetry/sst/EXAMPLES.md) 💡
44
+ - Copiar configuração de environment variables
45
+ - Adicionar `.use(middyMiddleware())` nos handlers
46
+
47
+ ### Quero entender os conceitos
48
+
49
+ 1. [LOGGING.md](./src/telemetry/core/LOGGING.md) - Como funciona o logging padronizado
50
+ 2. [TRACING.md](./src/telemetry/core/TRACING.md) - Como funciona o tracing padronizado
51
+ 3. [SST_COMPARISON.md](./src/telemetry/tsed/SST_COMPARISON.md) - Validação de paridade Tsed vs SST
52
+
53
+ ### Quero detalhes técnicos
54
+
55
+ 1. **Core:**
56
+ - [Core README](./src/telemetry/core/README.md) - Visão geral da implementação base
57
+ - [Logging](./src/telemetry/core/LOGGING.md) - Detalhes de StandardLogger
58
+ - [Tracing](./src/telemetry/core/TRACING.md) - Detalhes de StandardTracer
59
+ - [Tests README](./src/telemetry/core/__tests__/README.md) - Cobertura de testes
60
+
61
+ 2. **Tsed:**
62
+ - [Implementation Summary](./src/telemetry/tsed/IMPLEMENTATION_SUMMARY.md) - O que foi implementado
63
+ - [SST Comparison](./src/telemetry/tsed/SST_COMPARISON.md) - Validação de paridade
64
+
65
+ 3. **Código Fonte:**
66
+ - `src/telemetry/core/logger.ts` - StandardLogger
67
+ - `src/telemetry/core/tracer.ts` - StandardTracer
68
+ - `src/telemetry/tsed/log-telemetry.ts` - Decorator Tsed
69
+ - `src/telemetry/sst/middy/middleware.ts` - Middleware SST
70
+
71
+ ### Quero contribuir
72
+
73
+ 1. [README.md - Seção Contribuindo](./README.md#-contribuindo)
74
+ 2. [Tests README](./src/telemetry/core/__tests__/README.md) - Como escrever testes
75
+
76
+ ## 📖 Fluxo de Leitura Recomendado
77
+
78
+ ### Para Desenvolvedores Novos
79
+
80
+ ```
81
+ 1. README.md (visão geral)
82
+
83
+ 2. Guia do seu framework (Tsed ou SST)
84
+
85
+ 3. EXAMPLES.md (ver exemplos práticos) 💡
86
+
87
+ 4. core/LOGGING.md (entender logs)
88
+
89
+ 5. core/TRACING.md (entender traces)
90
+ ```
91
+
92
+ ### Para Desenvolvedores Avançados
93
+
94
+ ```
95
+ 1. Guia do framework (quick start)
96
+
97
+ 2. EXAMPLES.md (cenários reais) 💡
98
+
99
+ 3. IMPLEMENTATION_SUMMARY.md (arquitetura)
100
+
101
+ 4. SST_COMPARISON.md (validação de paridade)
102
+
103
+ 5. Código fonte (core/logger.ts, core/tracer.ts)
104
+ ```
105
+
106
+ ### Para Code Review
107
+
108
+ ```
109
+ 1. Tests README (ver cobertura)
110
+
111
+ 2. IMPLEMENTATION_SUMMARY.md (mudanças)
112
+
113
+ 3. SST_COMPARISON.md (validação)
114
+ ```
115
+
116
+ ## 🔍 Busca Rápida
117
+
118
+ | Preciso de... | Onde encontrar |
119
+ |--------------|----------------|
120
+ | Visão geral do Core | [core/README.md](./src/telemetry/core/README.md) |
121
+ | Exemplo de uso Tsed | [tsed/README.md](./src/telemetry/tsed/README.md) |
122
+ | **Exemplos práticos Tsed** | **[tsed/EXAMPLES.md](./src/telemetry/tsed/EXAMPLES.md)** 💡 |
123
+ | Exemplo de uso SST | [sst/README.md](./src/telemetry/sst/README.md) |
124
+ | **Exemplos práticos SST** | **[sst/EXAMPLES.md](./src/telemetry/sst/EXAMPLES.md)** 💡 |
125
+ | Campos de log disponíveis | [core/LOGGING.md](./src/telemetry/core/LOGGING.md) |
126
+ | Campos de trace disponíveis | [core/TRACING.md](./src/telemetry/core/TRACING.md) |
127
+ | Como funciona o decorator | [tsed/README.md - Decorator](./src/telemetry/tsed/README.md#-o-que-o-decorator-faz) |
128
+ | Como funciona o middleware | [sst/README.md - Middleware](./src/telemetry/sst/README.md#-o-que-o-middleware-faz) |
129
+ | Environment variables | [README.md - Configuração](./README.md#%EF%B8%8F-configuração) |
130
+ | Cobertura de testes | [core/__tests__/README.md](./src/telemetry/core/__tests__/README.md) |
131
+ | Tsed vs SST | [tsed/SST_COMPARISON.md](./src/telemetry/tsed/SST_COMPARISON.md) |
132
+ | O que mudou no Tsed | [tsed/IMPLEMENTATION_SUMMARY.md](./src/telemetry/tsed/IMPLEMENTATION_SUMMARY.md) |
133
+
134
+ ## 📝 Convenções
135
+
136
+ - **README.md** - Visão geral e quick start
137
+ - **[NOME].md** (maiúsculo) - Guias conceituais
138
+ - **[NOME]_[NOME].md** - Documentos de comparação/análise
139
+
140
+ ## 🎨 Ícones Usados
141
+
142
+ - 📊 Telemetry Hub (biblioteca)
143
+ - 🔷 Tsed (framework)
144
+ - 🟦 SST (framework)
145
+ - 🎯 Core (implementação base)
146
+ - 📝 Logs
147
+ - 🔍 Traces
148
+ - 📈 Métricas
149
+ - ✅ Validação/Sucesso
150
+ - 🧪 Testes
151
+ - 📚 Documentação