hyper_logger library

Classes

AnsiColor
True-color (24-bit) ANSI color for terminal output.
AnsiColorDecorator
Enables ANSI 24-bit color output for terminal rendering.
AwsEnvironment
AWS managed runtime — Lambda, ECS (incl. Fargate), or any container configured to ship stdout to CloudWatch Logs.
AwsJsonPrinter
A LogPrinter that emits one JSON object per log record in a format suited to AWS CloudWatch Logs and AWS Lambda.
AzureEnvironment
Azure managed runtime — App Service, Functions, Container Apps. Application Insights ingests stdout JSON with a flexible schema; the paired LogPrinterPresets.azure uses a JSON shape compatible with the App Insights customDimensions extraction.
AzureJsonPrinter
A LogPrinter that emits one JSON object per log record in a shape matching the Azure Application Insights traces data model.
BoxDecorator
Enables box-border rendering around the entire log entry.
CiEnvironment
CI/CD pipeline (GitHub Actions, GitLab CI, Jenkins, CircleCI, Travis, BuildKite, Azure Pipelines, Bitbucket, TeamCity, AWS CodeBuild). Note that AWS CodeBuild also runs as ECS — when both signals are present, AwsEnvironment wins because CloudWatch JSON is the better target there.
ComposablePrinter
A LogPrinter that formats records through a composable decorator pipeline.
CrashReportingDelegate
Abstract delegate for crash reporting integration.
DirectPrinter
The simplest possible LogPrinter: prints each record's message text directly using output, with no formatting, decoration, or colour.
EmojiDecorator
Enables emoji prefixes on log sections.
EnvironmentDetector
Detects the current RuntimeEnvironment by inspecting environment variables and stdout capabilities.
FileRetention
Retention policy shared across all of a printer's rotation rules.
FileRotation
A single rotation rule: a trigger condition crossed with a Cadence.
GcpEnvironment
Google Cloud managed runtime — Cloud Run (gen 1/2 + jobs), App Engine (standard + flexible), or Cloud Functions (gen 1/2). All ship JSON stdout to Cloud Logging by convention.
GcpJsonPrinter
A LogPrinter that emits one JSON object per log record in Google Cloud Logging's structured format.
HumanEnvironment
Anything not matching a cloud or CI environment — interactive terminal, IDE Run Console, piped output, file redirection, etc.
HyperLogger
The central static logging API for hyper_logger.
LogDecorator
Base class for all log decorators.
LogEntry
A structured log record that flows through the printer pipeline.
LoggerOptions
Configuration for a ScopedLogger instance.
LogMessage
A single log entry produced by HyperLogger.
LogPrinter
Base interface for all log printers.
LogPrinterPresets
Static factory presets for common LogPrinter configurations.
LogStyle
Mutable property bag that decorators write formatting preferences into.
MultiPrinter
A LogPrinter that fans each LogEntry out to a fixed list of child printers in order.
MultiPrinterChildError
One child printer's failure inside a MultiPrinterError.
PrefixDecorator
Enables the [Type] bracket prefix on the message section.
RotatingFilePrinter
A LogPrinter that appends formatted log entries to a file with optional rotation by size or time, and optional gzip compression of rotated files.
RuntimeEnvironment
The detected runtime environment, used by LogPrinterPresets.automatic to select the best printer configuration.
ScopedLogger<T>
A cached logger scope returned by HyperLogger.withOptions, or a fresh child returned by child / HyperLogger.child.
ScopedLoggerApi<T>
Public API surface for typed logging.
TerminalCapabilities
Properties of the output stream that drive preset composition.
ThrottledPrinter
A LogPrinter wrapper that rate-limits output to prevent high-frequency logging from choking the process or overwhelming the terminal.
TimestampDecorator
Enables a timestamp section in each log entry.

Enums

Cadence
When a FileRotation rule's trigger condition is evaluated.
LogLevel
Log severity levels for HyperLogger.
LogMode
Controls how a logger (global or scoped) handles log calls.

Mixins

HyperLoggerMixin<T>
Convenience mixin that delegates to a ScopedLoggerApi when provided, falling back to HyperLogger static methods.

Functions

defaultFileLineFormatter(LogEntry entry) String
Default file line formatter: <ISO-8601 timestamp> [LEVEL] <logger>: <message>, with optional data=<JSON> and context=<JSON> segments appended inline and error/stackTrace on indented continuation lines.
defaultFileWriterErrorHandler(Object error, StackTrace? stackTrace) → void
Default FileWriterErrorHandler: writes the error (and its stack trace, if provided) to stderr.

Typedefs

DateTimeFormatter = String Function(DateTime)
Formats a DateTime to a display string.
FileLineFormatter = String Function(LogEntry entry)
A formatter that turns a LogEntry into a single line of file content (no trailing newline — the printer appends one).
FileWriterErrorHandler = FutureOr<void> Function(Object error, StackTrace? stackTrace)
Callback invoked by RotatingFilePrinter when an out-of-band error (path resolution failure, IO write failure, rotation failure, compression failure) occurs.
LogInterceptor = LogEntry? Function(LogEntry entry)
Inspects, transforms, or drops a LogEntry before it reaches the printer.
LogOutput = void Function(String line)
A callback that receives a formatted log line.

Exceptions / Errors

MultiPrinterError
Thrown by MultiPrinter.log when one or more child printers threw during dispatch.