nimbushq/otel-node-demo

missing service.name

Closed this issue · 1 comments

Hi, thanks for this. I'm following this guide, but wasn't able to see service.name in the final logs.

This is the code I have

import { NodeSDK } from '@opentelemetry/sdk-node'
import { SimpleLogRecordProcessor } from '@opentelemetry/sdk-logs'
import { OTLPLogExporter } from '@opentelemetry/exporter-logs-otlp-proto'

import { Resource } from '@opentelemetry/resources'
import {SemanticResourceAttributes} from '@opentelemetry/semantic-conventions'
const resource = Resource.default().merge(
  new Resource({
    [SemanticResourceAttributes.SERVICE_NAME]: "logtest",
    [SemanticResourceAttributes.SERVICE_VERSION]: "0.1.2",
  }),
);

const sdk = new NodeSDK({
    resource,
    logRecordProcessor: new SimpleLogRecordProcessor(new OTLPLogExporter()),
})
sdk.start()

import { logs, SeverityNumber } from '@opentelemetry/api-logs'
const logger = logs.getLogger('app', '0.1.0')
logger.emit({
    severityNumber: SeverityNumber.INFO,
    body: "test log message",
    attributes: {'foo': 1},
})

Tangential:

  • it is now OTLPLogExporter (Logs -> Log)
  • a few packages aren't explicitly installed (eg @opentelemetry/api-logs), which doesn't work when using pnpm

False alarm, sorry!