xsoulspace_logger_triage 1.0.0-beta.0 copy "xsoulspace_logger_triage: ^1.0.0-beta.0" to clipboard
xsoulspace_logger_triage: ^1.0.0-beta.0 copied to clipboard

Fingerprinting, grouping, deduplication, priority scoring, and escalation sink for xsoulspace_logger.

xsoulspace_logger_triage #

Issue intelligence sink for xsoulspace_logger.

xsoulspace_logger_triage groups repeated failures into issue fingerprints and calculates priority scores for escalation.

Features #

  • Fingerprinting from error type, normalized message, stack frames, and category.
  • Token normalization for numbers/UUID/hex values.
  • Dedup window support (default 10 minutes).
  • Issue status lifecycle: open -> regressing -> resolved.
  • Priority scoring from severity + frequency + recency.
  • Escalation when score threshold is reached or critical events occur.
  • Streaming API for top issues.

Installation #

dependencies:
  xsoulspace_logger: ^1.0.0-beta.0
  xsoulspace_logger_triage: ^1.0.0-beta.0

Usage #

import 'package:xsoulspace_logger/xsoulspace_logger.dart';
import 'package:xsoulspace_logger_triage/xsoulspace_logger_triage.dart';

Future<void> main() async {
  final triage = IssueTriageSink(
    config: const TriageConfig(
      dedupWindow: Duration(minutes: 10),
      escalationScoreThreshold: 70,
    ),
  );

  final logger = Logger(const LoggerConfig(), <LogSink>[triage]);

  logger.error('api', 'Request failed for user 123', error: Exception('HTTP 500'));
  logger.error('api', 'Request failed for user 456', error: Exception('HTTP 500'));

  await logger.flush();

  final topIssues = triage.currentTopIssues(limit: 10);
  for (final issue in topIssues) {
    print('${issue.fingerprint} score=${issue.priorityScore} escalated=${issue.escalated}');
  }

  await triage.markResolved(topIssues.first.fingerprint);
  await logger.dispose();
}

APIs #

  • IssueTriageSink.watchTopIssues({int limit = 50})
  • IssueTriageSink.currentTopIssues({int limit = 50})
  • IssueTriageSink.markResolved(String fingerprint)
  • FingerprintGenerator.fingerprint(LogRecord)

License #

MIT

0
likes
150
points
99
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

Fingerprinting, grouping, deduplication, priority scoring, and escalation sink for xsoulspace_logger.

Topics

#logging #observability #triage #monitoring #dart

License

MIT (license)

Dependencies

crypto, xsoulspace_logger

More

Packages that depend on xsoulspace_logger_triage