Interfaces
karcytics_sdk.interfaces
ICrashReporter
Bases: Protocol
Abstract interface for reporting errors to the Hub's diagnostic engine.
Implemented today by both the Hub's real karcytics.core.diagnostics.
DiagnosticEngine (in-process plugins reach it indirectly via their own
logger and the AutoReportHandler) and karcytics_sdk.plugin.
runtime_services.DiagnosticsForwarder (isolated plugins, which have no
other route back to the Hub's diagnostics engine at all). Call from
inside the except: block handling exception so a real traceback is
captured, not just the exception's message.
Source code in src/karcytics_sdk/interfaces/i_crash_reporter.py
report_error(message, exception=None, plugin_id=None, fatal=False)
Report an error to the Hub's diagnostic engine.
IEventBus
Bases: Protocol
Abstract interface for the global event bus.
Source code in src/karcytics_sdk/interfaces/i_event_bus.py
publish(event_type, *args, **kwargs)
ILogger
Bases: Protocol
Abstract interface for logging.
Source code in src/karcytics_sdk/interfaces/i_logger.py
debug(msg)
error(msg, exception=None)
exception(msg)
info(msg)
ITaskScheduler
Bases: Protocol
Abstract interface for background task scheduling.