Skip to content

Commit feb3f36

Browse files
authored
Merge branch 'main' into feat/node/prom-client-implementation
2 parents 310a2b2 + f9f5123 commit feb3f36

File tree

58 files changed

+794
-324
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

58 files changed

+794
-324
lines changed

.github/workflows/lint.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,3 @@ jobs:
1919
- name: Lint
2020
run: |
2121
npm run lint
22-
npm run lint:markdown
23-
npm run lint:readme

.release-please-manifest.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
{
2-
"detectors/node/opentelemetry-resource-detector-alibaba-cloud": "0.29.2",
2+
"detectors/node/opentelemetry-resource-detector-alibaba-cloud": "0.29.3",
33
"detectors/node/opentelemetry-resource-detector-aws": "1.6.2",
44
"detectors/node/opentelemetry-resource-detector-azure": "0.2.11",
5-
"detectors/node/opentelemetry-resource-detector-container": "0.4.2",
5+
"detectors/node/opentelemetry-resource-detector-container": "0.4.4",
66
"detectors/node/opentelemetry-resource-detector-gcp": "0.29.12",
77
"detectors/node/opentelemetry-resource-detector-github": "0.29.0",
88
"detectors/node/opentelemetry-resource-detector-instana": "0.13.0",
99
"metapackages/auto-configuration-propagators": "0.3.1",
10-
"metapackages/auto-instrumentations-node": "0.50.1",
10+
"metapackages/auto-instrumentations-node": "0.51.0",
1111
"metapackages/auto-instrumentations-web": "0.41.0",
1212
"packages/baggage-span-processor": "0.3.1",
1313
"packages/opentelemetry-host-metrics": "0.35.4",
@@ -48,7 +48,7 @@
4848
"plugins/node/opentelemetry-instrumentation-mysql2": "0.41.0",
4949
"plugins/node/opentelemetry-instrumentation-nestjs-core": "0.40.0",
5050
"plugins/node/opentelemetry-instrumentation-net": "0.39.0",
51-
"plugins/node/opentelemetry-instrumentation-pg": "0.45.0",
51+
"plugins/node/opentelemetry-instrumentation-pg": "0.46.0",
5252
"plugins/node/opentelemetry-instrumentation-pino": "0.42.0",
5353
"plugins/node/opentelemetry-instrumentation-redis": "0.42.0",
5454
"plugins/node/opentelemetry-instrumentation-redis-4": "0.42.1",

detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Changelog
22

3+
## [0.29.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.29.2...resource-detector-alibaba-cloud-v0.29.3) (2024-10-10)
4+
5+
6+
### Bug Fixes
7+
8+
* add missing @opentelemetry/core dependency ([#2473](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2473)) ([4d66431](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/4d66431a2ad480720bf6c33663a419ec1404cd33))
9+
310
## [0.29.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.29.1...resource-detector-alibaba-cloud-v0.29.2) (2024-10-08)
411

512

detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@opentelemetry/resource-detector-alibaba-cloud",
3-
"version": "0.29.2",
3+
"version": "0.29.3",
44
"description": "OpenTelemetry resource detector for Alibaba Cloud",
55
"main": "build/src/index.js",
66
"types": "build/src/index.d.ts",
@@ -57,6 +57,7 @@
5757
},
5858
"dependencies": {
5959
"@opentelemetry/resources": "^1.10.0",
60+
"@opentelemetry/core": "^1.26.0",
6061
"@opentelemetry/semantic-conventions": "^1.27.0"
6162
},
6263
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/detectors/node/opentelemetry-resource-detector-alibaba-cloud#readme"

detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
11
# Changelog
22

3+
## [0.4.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.4.3...resource-detector-container-v0.4.4) (2024-10-16)
4+
5+
6+
### Bug Fixes
7+
8+
* **detector-container:** properly detect container ID when using Podman ([#2448](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2448)) ([ad560df](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/ad560dfc5f662d418a74b0b197b3f48e4ae002d0))
9+
10+
## [0.4.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.4.2...resource-detector-container-v0.4.3) (2024-10-10)
11+
12+
13+
### Bug Fixes
14+
15+
* add missing @opentelemetry/core dependency ([#2473](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2473)) ([4d66431](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/4d66431a2ad480720bf6c33663a419ec1404cd33))
16+
317
## [0.4.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.4.1...resource-detector-container-v0.4.2) (2024-10-08)
418

519

detectors/node/opentelemetry-resource-detector-container/package.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@opentelemetry/resource-detector-container",
3-
"version": "0.4.2",
3+
"version": "0.4.4",
44
"description": "Opentelemetry resource detector to get container resource attributes",
55
"main": "build/src/index.js",
66
"types": "build/src/index.d.ts",
@@ -51,6 +51,7 @@
5151
},
5252
"dependencies": {
5353
"@opentelemetry/resources": "^1.10.0",
54+
"@opentelemetry/core": "^1.26.0",
5455
"@opentelemetry/semantic-conventions": "^1.27.0"
5556
},
5657
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/detectors/node/opentelemetry-resource-detector-container#readme"

detectors/node/opentelemetry-resource-detector-container/src/detectors/ContainerDetector.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ export class ContainerDetector implements DetectorSync {
3535
readonly DEFAULT_CGROUP_V2_PATH = '/proc/self/mountinfo';
3636
readonly UTF8_UNICODE = 'utf8';
3737
readonly HOSTNAME = 'hostname';
38-
readonly MARKING_PREFIX = 'containers';
38+
readonly MARKING_PREFIX = ['containers', 'overlay-containers'];
3939
readonly CRIO = 'crio-';
4040
readonly CRI_CONTAINERD = 'cri-containerd-';
4141
readonly DOCKER = 'docker-';
@@ -105,7 +105,7 @@ export class ContainerDetector implements DetectorSync {
105105
const strArray = str?.split('/') ?? [];
106106
for (let i = 0; i < strArray.length - 1; i++) {
107107
if (
108-
strArray[i] === this.MARKING_PREFIX &&
108+
this.MARKING_PREFIX.includes(strArray[i]) &&
109109
strArray[i + 1]?.length === this.CONTAINER_ID_LENGTH
110110
) {
111111
return strArray[i + 1];

detectors/node/opentelemetry-resource-detector-container/src/detectors/utils.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export const DEFAULT_CGROUP_V1_PATH = '/proc/self/cgroup';
1818
export const DEFAULT_CGROUP_V2_PATH = '/proc/self/mountinfo';
1919
export const UTF8_UNICODE = 'utf8';
2020
export const HOSTNAME = 'hostname';
21-
export const MARKING_PREFIX = 'containers';
21+
export const MARKING_PREFIX = ['containers', 'overlay-containers'];
2222
export const CRIO = 'crio-';
2323
export const CRI_CONTAINERD = 'cri-containerd-';
2424
export const DOCKER = 'docker-';

detectors/node/opentelemetry-resource-detector-container/test/ContainerDetector.test.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@ describe('ContainerDetector', () => {
3232
const correctCgroupV2Data = `containers/tmhdefghijklmnopqrstuvwxyzafgrefghiugkmnopqrstuvwxyzabcdefghijkl/hostname
3333
fhkjdshgfhsdfjhdsfkjhfkdshkjhfd/host
3434
sahfhfjkhjhfhjdhfjkdhfkjdhfjkhhdsjfhdfhjdhfkj/somethingelse`;
35+
const correctCgroupV2PodmanData =
36+
'4245 4237 0:94 /containers/overlay-containers/4e9dc37d00ebd2daea029d84bb37764ce12d746a6f3a33c5969cee15c4fc4418/userdata/hostname /etc/hostname rw - tmpfs tmpfs rw';
3537

3638
const wrongCgroupV2Data =
3739
'bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm/wrongkeyword';
@@ -85,6 +87,22 @@ describe('ContainerDetector', () => {
8587
});
8688
});
8789

90+
it('should return a resource with container ID with a valid container ID present for v2 (Podman)', async () => {
91+
readStub = sinon.stub(ContainerDetector, 'readFileAsync' as any);
92+
93+
readStub.onFirstCall().resolves('');
94+
readStub.onSecondCall().resolves(correctCgroupV2PodmanData);
95+
96+
const resource = containerDetector.detect();
97+
await resource.waitForAsyncAttributes?.();
98+
sinon.assert.calledTwice(readStub);
99+
100+
assert.ok(resource);
101+
assertContainerResource(resource, {
102+
id: '4e9dc37d00ebd2daea029d84bb37764ce12d746a6f3a33c5969cee15c4fc4418',
103+
});
104+
});
105+
88106
it('should return a empty resource with failed hostname check for v2', async () => {
89107
readStub = sinon.stub(ContainerDetector, 'readFileAsync' as any);
90108

examples/mysql/README.md

Lines changed: 2 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Overview
22

3-
OpenTelemetry MySQL Instrumentation allows the user to automatically collect trace data and metrics and export them to the backend of choice (we can use Zipkin, Jaeger or Grafana for this example), to give observability to distributed systems.
3+
OpenTelemetry MySQL Instrumentation allows the user to automatically collect trace data and metrics and export them to the backend of choice (we can use Zipkin or Grafana for this example), to give observability to distributed systems.
44

55
This is a modification of the HTTP example that executes multiple parallel requests that interact with a MySQL server backend using the `mysql` npm module. The example displays traces using multiple connection methods.
66

@@ -20,13 +20,11 @@ npm install
2020
```
2121

2222
Setup [Zipkin Tracing](https://zipkin.io/pages/quickstart.html)
23-
or
24-
Setup [Jaeger Tracing](https://www.jaegertracing.io/docs/latest/getting-started/#all-in-one)
2523

2624
In case you want to see also metrics:
2725

2826
1. Go to `docker` folder
29-
2. Run `docker compose up`. This will set up Zipkin, Jaeger, otel collector, Prometheus and Grafana.
27+
2. Run `docker compose up`. This will set up Zipkin, otel collector, Prometheus and Grafana.
3028
3. To see your metrics, go to `http://localhost:3000/`.
3129

3230
## Run the Application
@@ -54,29 +52,6 @@ Go to Zipkin with your browser <http://localhost:9411/zipkin/traces/(your-trace-
5452

5553
<p align="center"><img alt="Zipkin UI with trace" src="./images/zipkin-ui.png?raw=true"/></p>
5654

57-
### Jaeger
58-
59-
- Run the server
60-
61-
```sh
62-
# from this directory
63-
npm run jaeger:server
64-
```
65-
66-
- Run the client
67-
68-
```sh
69-
# from this directory
70-
npm run jaeger:client
71-
```
72-
73-
#### Jaeger UI
74-
75-
The `jaeger:server` script should output the `traceid` in the terminal (e.g `traceid: 4815c3d576d930189725f1f1d1bdfcc6`).
76-
Go to Jaeger with your browser <http://localhost:16686/trace/(your-trace-id)> (e.g <http://localhost:16686/trace/4815c3d576d930189725f1f1d1bdfcc6>)
77-
78-
<p align="center"><img alt="Jaeger UI with trace" src="images/jaeger-ui.png?raw=true"/></p>
79-
8055
## Useful links
8156

8257
- For more information on OpenTelemetry, visit: <https://opentelemetry.io/>

0 commit comments

Comments
 (0)