insightops_dart 0.2.0 copy "insightops_dart: ^0.2.0" to clipboard
insightops_dart: ^0.2.0 copied to clipboard

Unofficial wrapper for using Rapid7 insightOps logs (former LogEntries) with Dart.

An unofficial wrapper for using Rapid7 insightOps logs (former LogEntries) with Dart.

This package is using logging package to do the actual logging, and implements a handler to post the message to insightOps.

Setting up #

Set up a new log by following the instructions, copy a URL that you will use to send your log data to.

Usage #

A simple usage example:

import 'package:insightops_dart/insightops_dart.dart';
import 'package:logging/logging.dart';

main() {
  // Create handler and pass the URL from log settings.
  final handler = InsightOpsLogger('__LOG_URL__');

  // Define settings for the logger.
  Logger.root.level = Level.ALL;
  Logger.root.onRecord.listen(handler);

  // Create logger.
  final logger = Logger('Test logger');

  // Log info message.
  logger.info('test message');

  // Log errors with stacktrace.
  try {
    throw Error();
  } catch (e, stackTrace) {
    logger.severe('Test failure', e, stackTrace);
  }
}

Update body of the message #

You can optionally pass transformBody parameter to the constructor. This method will be called with each request with the body of the message. You can use it to update the body:


final handler = InsightOpsLogger(
  '__LOG_URL__',
  transformBody: (body) async =>
  {
    'meta': {'deviceId': 'ID'},
    ...body,
  },
);

Features and bugs #

Please file feature requests and bugs at the issue tracker.

1
likes
130
pub points
57%
popularity

Publisher

verified publisherookamikb.dev

Unofficial wrapper for using Rapid7 insightOps logs (former LogEntries) with Dart.

Repository (GitHub)
View/report issues

Documentation

API reference

License

BSD-2-Clause (LICENSE)

Dependencies

async, http, logging

More

Packages that depend on insightops_dart