File tree Expand file tree Collapse file tree 3 files changed +22
-8
lines changed Expand file tree Collapse file tree 3 files changed +22
-8
lines changed Original file line number Diff line number Diff line change @@ -78,11 +78,6 @@ WORKDIR /lowcoder/node-service/app/
78
78
RUN yarn --immutable
79
79
RUN yarn build
80
80
81
- # --- ADDED: Install OpenTelemetry dependencies for Node.js service ---
82
- RUN yarn add \
83
- @opentelemetry/api \
84
- @opentelemetry/auto-instrumentations-node
85
-
86
81
# Copy startup script
87
82
COPY deploy/docker/node-service/entrypoint.sh /lowcoder/node-service/entrypoint.sh
88
83
COPY deploy/docker/node-service/init.sh /lowcoder/node-service/init.sh
@@ -114,9 +109,6 @@ RUN apt-get update \
114
109
115
110
COPY --from=build-node-service /lowcoder/node-service /lowcoder/node-service
116
111
117
- # Enable OpenTelemetry node agent
118
- ENV NODE_OPTIONS="--require @opentelemetry/auto-instrumentations-node/register"
119
-
120
112
EXPOSE 6060
121
113
CMD [ "/bin/sh" , "/lowcoder/node-service/entrypoint.sh" ]
122
114
Original file line number Diff line number Diff line change @@ -6,6 +6,9 @@ export USER_ID=${LOWCODER_PUID:=9001}
6
6
export GROUP_ID=${LOWCODER_PGID:= 9001}
7
7
export API_HOST=" ${LOWCODER_API_SERVICE_URL:= http:// localhost: 8080} "
8
8
9
+ # Require OpenTelemetry
10
+ export NODE_OPTIONS=" -r /lowcoder/node-service/app/otel.config.js"
11
+
9
12
# Run init script
10
13
echo " Initializing node-service..."
11
14
/lowcoder/node-service/init.sh
Original file line number Diff line number Diff line change
1
+ const { NodeSDK } = require ( '@opentelemetry/sdk-node' ) ;
2
+ const { ConsoleSpanExporter } = require ( '@opentelemetry/sdk-trace-node' ) ;
3
+ const {
4
+ getNodeAutoInstrumentations,
5
+ } = require ( '@opentelemetry/auto-instrumentations-node' ) ;
6
+ const {
7
+ PeriodicExportingMetricReader,
8
+ ConsoleMetricExporter,
9
+ } = require ( '@opentelemetry/sdk-metrics' ) ;
10
+
11
+ const sdk = new NodeSDK ( {
12
+ traceExporter : new ConsoleSpanExporter ( ) ,
13
+ metricReader : new PeriodicExportingMetricReader ( {
14
+ exporter : new ConsoleMetricExporter ( ) ,
15
+ } ) ,
16
+ instrumentations : [ getNodeAutoInstrumentations ( ) ] ,
17
+ } ) ;
18
+
19
+ sdk . start ( ) ;
You can’t perform that action at this time.
0 commit comments