gcp/run/helloworld-observe/index.js (26 lines of code) (raw):
const otel = require('@opentelemetry/api');
const tracer = otel.trace.getTracer('hello-world');
const express = require('express');
const app = express();
app.get('/', (req, res) => {
tracer.startActiveSpan('hi', (span) => {
console.log('hello');
span.end();
});
res.send(
`<div style="text-align: center;">
<h1 style="color: #005A9E; font-family:'Verdana'">
Hello Elastic Observability - Google Cloud Run - Node.js
</h1>
<img src="https://storage.googleapis.com/elastic-helloworld/elastic-logo.png">
</div>`
);
tracer.startActiveSpan('bye', (span) => {
console.log('goodbye');
span.end();
});
});
const port = parseInt(process.env.PORT) || 8080;
app.listen(port, () => {
console.log(`helloworld: listening on port ${port}`);
});