@azure/monitor-opentelemetry-exporter 1.0.0-beta.16 → 1.0.0-beta.18

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 (49) hide show
  1. package/README.md +35 -11
  2. package/dist/index.js +444 -377
  3. package/dist-esm/src/Declarations/Contracts/Constants.js.map +1 -1
  4. package/dist-esm/src/export/base.js +10 -4
  5. package/dist-esm/src/export/base.js.map +1 -1
  6. package/dist-esm/src/export/log.js +10 -4
  7. package/dist-esm/src/export/log.js.map +1 -1
  8. package/dist-esm/src/export/metric.js +11 -5
  9. package/dist-esm/src/export/metric.js.map +1 -1
  10. package/dist-esm/src/export/statsbeat/longIntervalStatsbeatMetrics.js +53 -54
  11. package/dist-esm/src/export/statsbeat/longIntervalStatsbeatMetrics.js.map +1 -1
  12. package/dist-esm/src/export/statsbeat/networkStatsbeatMetrics.js +101 -104
  13. package/dist-esm/src/export/statsbeat/networkStatsbeatMetrics.js.map +1 -1
  14. package/dist-esm/src/export/statsbeat/statsbeatExporter.js +7 -2
  15. package/dist-esm/src/export/statsbeat/statsbeatExporter.js.map +1 -1
  16. package/dist-esm/src/export/statsbeat/statsbeatMetrics.js +33 -21
  17. package/dist-esm/src/export/statsbeat/statsbeatMetrics.js.map +1 -1
  18. package/dist-esm/src/export/statsbeat/types.js +11 -8
  19. package/dist-esm/src/export/statsbeat/types.js.map +1 -1
  20. package/dist-esm/src/export/trace.js +14 -8
  21. package/dist-esm/src/export/trace.js.map +1 -1
  22. package/dist-esm/src/generated/applicationInsightsClient.js +1 -1
  23. package/dist-esm/src/generated/applicationInsightsClient.js.map +1 -1
  24. package/dist-esm/src/platform/nodejs/baseSender.js +52 -52
  25. package/dist-esm/src/platform/nodejs/baseSender.js.map +1 -1
  26. package/dist-esm/src/platform/nodejs/context/context.js +4 -5
  27. package/dist-esm/src/platform/nodejs/context/context.js.map +1 -1
  28. package/dist-esm/src/platform/nodejs/httpSender.js +22 -21
  29. package/dist-esm/src/platform/nodejs/httpSender.js.map +1 -1
  30. package/dist-esm/src/platform/nodejs/persist/fileAccessControl.js +6 -7
  31. package/dist-esm/src/platform/nodejs/persist/fileAccessControl.js.map +1 -1
  32. package/dist-esm/src/platform/nodejs/persist/fileSystemPersist.js +1 -2
  33. package/dist-esm/src/platform/nodejs/persist/fileSystemPersist.js.map +1 -1
  34. package/dist-esm/src/sampling.js +17 -17
  35. package/dist-esm/src/sampling.js.map +1 -1
  36. package/dist-esm/src/utils/common.js +5 -5
  37. package/dist-esm/src/utils/common.js.map +1 -1
  38. package/dist-esm/src/utils/connectionStringParser.js +12 -3
  39. package/dist-esm/src/utils/connectionStringParser.js.map +1 -1
  40. package/dist-esm/src/utils/constants/applicationinsights.js +1 -1
  41. package/dist-esm/src/utils/constants/applicationinsights.js.map +1 -1
  42. package/dist-esm/src/utils/logUtils.js +8 -8
  43. package/dist-esm/src/utils/logUtils.js.map +1 -1
  44. package/dist-esm/src/utils/metricUtils.js +6 -6
  45. package/dist-esm/src/utils/metricUtils.js.map +1 -1
  46. package/dist-esm/src/utils/spanUtils.js +22 -21
  47. package/dist-esm/src/utils/spanUtils.js.map +1 -1
  48. package/package.json +24 -23
  49. package/types/monitor-opentelemetry-exporter.d.ts +16 -12
package/README.md CHANGED
@@ -23,7 +23,7 @@ See our [support policy](https://github.com/Azure/azure-sdk-for-js/blob/main/SUP
23
23
 
24
24
  ### Distributed Tracing
25
25
 
26
- Add the exporter to your existing OpenTelemetry tracer provider (`NodeTracerProvider` / `BasicTracerProvider`)
26
+ Add the exporter to your existing OpenTelemetry Tracer Provider (`NodeTracerProvider` / `BasicTracerProvider`)
27
27
 
28
28
  ```js
29
29
  const { AzureMonitorTraceExporter } = require("@azure/monitor-opentelemetry-exporter");
@@ -32,12 +32,13 @@ const { NodeTracerProvider } = require("@opentelemetry/sdk-trace-node");
32
32
  const { Resource } = require("@opentelemetry/resources");
33
33
  const { SemanticResourceAttributes } = require("@opentelemetry/semantic-conventions");
34
34
 
35
- const provider = new NodeTracerProvider({
35
+ const tracerProvider = new NodeTracerProvider({
36
36
  resource: new Resource({
37
37
  [SemanticResourceAttributes.SERVICE_NAME]: "basic-service",
38
38
  }),
39
39
  });
40
- provider.register();
40
+ // Register Tracer Provider as global
41
+ tracerProvider.register();
41
42
 
42
43
  // Create an exporter instance
43
44
  const exporter = new AzureMonitorTraceExporter({
@@ -45,8 +46,8 @@ const exporter = new AzureMonitorTraceExporter({
45
46
  process.env["APPLICATIONINSIGHTS_CONNECTION_STRING"] || "<your connection string>"
46
47
  });
47
48
 
48
- // Add the exporter to the provider
49
- provider.addSpanProcessor(
49
+ // Add the exporter to the Provider
50
+ tracerProvider.addSpanProcessor(
50
51
  new BatchSpanProcessor(exporter, {
51
52
  bufferTimeout: 15000,
52
53
  bufferSize: 1000
@@ -56,16 +57,14 @@ provider.addSpanProcessor(
56
57
 
57
58
  ### Metrics
58
59
 
59
- Add the exporter to your existing OpenTelemetry tracer provider (`NodeTracerProvider` / `BasicTracerProvider`)
60
+ Add the exporter to your existing OpenTelemetry Meter Provider (`MeterProvider`)
60
61
 
61
62
  ```js
63
+ const { metrics } = require("@opentelemetry/api");
62
64
  const { MeterProvider, PeriodicExportingMetricReader } = require("@opentelemetry/sdk-metrics");
63
65
  const { AzureMonitorMetricExporter } = require("@azure/monitor-opentelemetry-exporter");
64
- const { Resource } = require("@opentelemetry/resources");
65
- const { SemanticResourceAttributes } = require("@opentelemetry/semantic-conventions");
66
66
 
67
67
  // Add the exporter into the MetricReader and register it with the MeterProvider
68
- const provider = new MeterProvider();
69
68
  const exporter = new AzureMonitorMetricExporter({
70
69
  connectionString:
71
70
  process.env["APPLICATIONINSIGHTS_CONNECTION_STRING"] || "<your connection string>",
@@ -74,12 +73,37 @@ const metricReaderOptions = {
74
73
  exporter: exporter,
75
74
  };
76
75
  const metricReader = new PeriodicExportingMetricReader(metricReaderOptions);
77
- provider.addMetricReader(metricReader);
76
+ const meterProvider = new MeterProvider();
77
+ meterProvider.addMetricReader(metricReader);
78
+
79
+ // Register Meter Provider as global
80
+ metrics.setGlobalMeterProvider(meterProvider);
81
+
78
82
  ```
79
83
 
80
84
  ### Logs
81
85
 
82
- Coming Soon
86
+ Add the Log Exporter to your existing OpenTelemetry Logger Provider (`LoggerProvider`)
87
+
88
+ ```js
89
+ const { logs } = require("@opentelemetry/api-logs");
90
+ const { LoggerProvider, BatchLogRecordProcessor } = require("@opentelemetry/sdk-logs");
91
+ const { AzureMonitorLogExporter } = require("@azure/monitor-opentelemetry-exporter");
92
+
93
+ // Add the Log exporter into the logRecordProcessor and register it with the LoggerProvider
94
+ const exporter = new AzureMonitorLogExporter({
95
+ connectionString:
96
+ process.env["APPLICATIONINSIGHTS_CONNECTION_STRING"] || "<your connection string>",
97
+ });
98
+ const logRecordProcessor = new BatchLogRecordProcessor(exporter);
99
+ const loggerProvider = new LoggerProvider();
100
+ loggerProvider.addLogRecordProcessor(logRecordProcessor);
101
+
102
+ // Register logger Provider as global
103
+ logs.setGlobalLoggerProvider(loggerProvider);
104
+
105
+ ```
106
+
83
107
 
84
108
  ### Sampling
85
109