All Classes and Interfaces

Class
Description
Framework-pure alert engine: the extracted heart of the original Logback NtfyAlertAppender, decoupled from any logging framework.
Framework-neutral snapshot of a single log event, handed to AlertEngine.submit(io.github.pimak.ntfy.core.AlertEvent).
One link of an exception chain: the throwable's class name and its message (either may be null in degenerate cases, mirroring the source throwable).
The severity of an AlertEvent, as far as the alerting engine is concerned — the value AlertEngine routes on.
Auth strategy for an outbound ntfy publish request, modeled as a sealed hierarchy so each mode carries only the fields it needs and knows how to build its own Authorization header.
Sends Authorization: Basic <base64(username:password)>.
Sends Authorization: Bearer <token>.
Sends no Authorization header at all — a valid anonymous publish.
Resolves an NtfyConfig from the ambient environment.
Self-diagnostic sink for AlertEngine.
Parses the several duration spellings the ntfy configuration surface accepts into a Duration.
A thin Logback UnsynchronizedAppenderBase<ILoggingEvent> shell over the framework-neutral AlertEngine.
Projects a logging framework's diagnostic context (MDC) onto the small, bounded, sanitized map of key -> value pairs an alert body may carry — the include-mdc-keys feature.
A single ntfy notification action button, modeled as a sealed hierarchy so each action type carries only the fields it needs (mirroring the AuthMode pattern).
Sends an Android broadcast intent when tapped (only actioned by ntfy's Android app).
A single intent extra (name/value) carried by a NtfyAction.Broadcast action.
Sends an HTTP request to url when tapped.
A single request header (name/value) carried by an NtfyAction.Http action.
Opens url in the browser/app when the action button is tapped.
Auto-configuration that turns ntfy.* properties into a live ntfy integration for a Spring Boot application.
Generic, standalone ntfy notification client — the "send an arbitrary notification" surface, independent of AlertEngine's log-alert lifecycle.
Exposes the injectable NtfyClient bean, built from the bound NtfyConfiguration.
Exposes a generic, application-scoped NtfyClient for CDI injection, so Quarkus apps can @Inject NtfyClient to send arbitrary notifications independent of the log-alert path.
Immutable, framework-neutral configuration for the ntfy engine and client.
Fluent builder for NtfyConfig; every setter returns this.
Binds all ntfy.* application configuration for a Micronaut application.
Declarative zero-code entry point: name this class in a JUL logging.properties —
A Handler that forwards SEVERE-and-above (and, when a warn route is configured, WARNING) LogRecords to the ntfy AlertEngine.
Programmatic one-liner install of the ntfy JUL handler from the ambient environment: NtfyJulInstaller.install() early in main attaches a NtfyJulHandler to the root logger when the environment configures ntfy (NTFY_URL/NTFY_TOPIC, -Dntfy.*, or a trusted classpath ntfy.properties — see JulAmbientConfig for the classpath-endpoint opt-in guard), and does nothing otherwise.
A thin log4j2 AbstractAppender shell over the framework-neutral AlertEngine, exposed to log4j2.xml as the <Ntfy .../> element.
Plugin builder for the <Ntfy .../> element.
Programmatic one-liner install of the ntfy log4j2 appender from the ambient environment: NtfyLog4j2Installer.install() early in main attaches a started NtfyLog4j2Appender to the root logger at Level.ERROR when the environment configures ntfy (NTFY_URL/NTFY_TOPIC, -Dntfy.*, or a trusted classpath ntfy.properties — see Log4j2AmbientConfig for the classpath-endpoint opt-in guard), and does nothing otherwise.
A Logback Configurator SPI implementation that auto-installs the ntfy appender on the root logger with zero XML — activated only when the ambient environment actually configures ntfy.
Installs the ntfy appender named "ntfy-auto" on the root Logback logger once the Micronaut context has started, and detaches it again on shutdown.
Binds the ntfy pipeline observability counters to Micrometer as three FunctionCounters: ntfy.pipeline.published, ntfy.pipeline.suppressed, and ntfy.pipeline.failed — the same three meters, with the same names and meanings, that the Spring Boot starter exports.
Binds all ntfy.* application properties.
Stateless, never-throws HTTP publisher for the ntfy wire format.
Records the creation of the ntfy log Handler at RUNTIME_INIT.
Run-time configuration surface for the ntfy Quarkus extension, mapped from the quarkus.ntfy.* config namespace.
Thrown out of AlertEngine.start() when the startup self-test fails and startup-ping-fail-fast is enabled — the deliberate opt-in that turns a broken alerting configuration into a failed deployment rather than a silent one.
Read-only, monotonic observability counters for the alert pipeline, letting operators "alert on the alerter" (e.g. a spike in PipelineCounters.failed() signalling a revoked token or a topic ACL change).
An immutable, point-in-time triple of the three counters.
What the opt-in startup self-test does when AlertEngine.start() finishes activating.