otel_simple_logger 0.1.0 copy "otel_simple_logger: ^0.1.0" to clipboard
otel_simple_logger: ^0.1.0 copied to clipboard

OpenTelemetry log bridge for package:simple_logger. Hooks SimpleLogger.onLogged so every log call is mirrored into the OTel logs pipeline, inheriting trace_id/span_id.

otel_simple_logger #

OpenTelemetry log bridge for package:simple_logger.

Installs an onLogged callback on a SimpleLogger that mirrors every record into the OpenTelemetry logs pipeline. Records inherit trace_id / span_id from the active span — log calls inside a Tracer.startActiveSpan block are auto-correlated.

Install #

dependencies:
  simple_logger: ^1.10.0
  otel_simple_logger: ^0.1.0

Use #

import 'package:dartastic_opentelemetry/dartastic_opentelemetry.dart';
import 'package:logging/logging.dart';
import 'package:otel_simple_logger/otel_simple_logger.dart';
import 'package:simple_logger/simple_logger.dart';

Future<void> main() async {
  await OTel.initialize(
    serviceName: 'my-app',
  );

  final logger = SimpleLogger();
  logger.setLevel(Level.ALL);

  final detach = attachOTelSimpleLogger(logger);

  logger.log(Level.INFO, 'user signed in');

  // detach() when you want to stop forwarding.
}

To keep a previously-installed onLogged callback (e.g. a file appender), pass keepExisting: true:

attachOTelSimpleLogger(logger, keepExisting: true);

Severity mapping #

package:logging Level OTel severity_number
FINEST / FINER TRACE
FINE / CONFIG DEBUG
INFO INFO
WARNING WARN
SEVERE ERROR
SHOUT FATAL

Suppression #

runWithoutSimpleLoggerInstrumentation(() {
  logger.log(Level.INFO, 'not exported to OTel');
});

License #

Apache 2.0 — copyright Mindful Software LLC.

0
likes
160
points
67
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

OpenTelemetry log bridge for package:simple_logger. Hooks SimpleLogger.onLogged so every log call is mirrored into the OTel logs pipeline, inheriting trace_id/span_id.

Homepage
Repository (GitHub)
View/report issues

License

Apache-2.0 (license)

Dependencies

dartastic_opentelemetry, dartastic_opentelemetry_api, logging, simple_logger

More

Packages that depend on otel_simple_logger