- BREAKING:
SeqLogger.log()-exceptionandcontextchanged from positional to named parameters - BREAKING:
SeqLoggerconvenience methods (verbose,debug,info,warning,error,fatal) - same positional-to-named migration - BREAKING:
SeqEventconstructor - all parameters excepttimestampare now named - BREAKING:
SeqClient.sendEvents()- return type changed fromFuture<void>toFuture<List<SeqEventResult>> - BREAKING: Update SDK constraint to
^3.8.0 - FEAT:
SeqEventResultclass - per-event success/failure result withisPermanentflag - FEAT:
throwOnErrorflag (#14) - whenfalse(default), flush errors are caught and reported viaonDiagnosticLog; whentrue, they propagate to caller - FEAT:
onFlushErrorcallback - handler invoked when flush fails; receives failed events and error, returns events to re-queue - FEAT:
SeqClientException.isRetryable- allows implementations to signal non-retryable errors (e.g. 413 Payload Too Large) - FEAT: OpenTelemetry / distributed tracing fields (#10) - 7 new CLEF fields on
SeqEvent:traceId(@tr),spanId(@sp),parentSpanId(@ps),spanStart(@st),scope(@sc),resourceAttributes(@ra),spanKind(@sk) - FIX: Known Seq CLEF keys (
@tr,@sp, etc.) are no longer double-escaped in context - FIX: Exception formatting (#11) -
@xfield now usestoString()with safe fallback instead ofError.safeToString()
- Prevent multiple flushes while flushing
- More documentation
- Moved
SeqHttpClientto its own package @ https://pub.dev/packages/dart_seq_http_client
- First stable release 🎉
SeqClientExceptionnow extendsException- The static methods returning
SeqEventinstances are now factories - Lots of documentation and some tests
- No changes; just a version bump to test the release workflow
- No changes; just a version bump to test the release workflow
- First stable release candidate 🎉
SeqClientExceptionnow extendsException- The static methods returning
SeqEventinstances are now factories - Lots of documentation and some tests
- Expose
backoffproperty viaSeqLogger.httpfactory
- Added
diagnosticLogandonDiagnosticLogtoSeqLoggerto track internal logs
- Changed
SeqCacheinterface to differentiate between retrieving and removing events - The
SeqClient.sendEventsmethod now takes aListinstead of aStream - The
SeqClientExceptioncan now optionally hold a causing exception and stack trace - The
SeqHttpClientwraps exceptions from thehttppackage inSeqClientExceptions - Events are now only removed from cache when they have actually been sent
- Added ability to turn off auto flushing
- Some small optimizations
- Implemented linear backoff for
SeqHttpClientretries
- Downgraded
httpdependency to at most^0.13.3for more compatibility
- Remove dependency on
flutterSDK - The
contextparameter onSeqEvent.<level>()methods is now optional - Added more convenience methods to
SeqLogger
- Initial release 🎉
- Added
SeqLoggerwith support for logging to the HTTP ingestion endpoint of an Seq server