Skip to content

Config Schema

This page contains the full config schema for LoggiFly.

The content of this page is dynamically generatated from the pydantic models that make up the config.yaml structure.

Top-level Config

FieldTypeDefaultRequiredDescription
versioninteger2Config schema version. Must be `2`.
containersContainerSourceConfignullConfiguration for Docker container monitoring.
swarmSwarmSourceConfignullConfiguration for Docker Swarm service monitoring.
notificationsNotificationsConfigNotificationsConfigNotification service configuration (ntfy, apprise, webhook).
globalGlobalConfigGlobalConfig
settingsSettingsConfigSettingsConfigApplication-wide settings.
containers ContainerSourceConfig
FieldTypeDefaultRequiredDescription
container_eventsContainerEventConfig[]nullEvents to monitor on containers. Triggers when the specified Docker lifecycle event occurs.
keywordsKeywordItem[] | RegexItem[] | AllOf[]nullList of keywords, regexes, or `all_of` groups to match in log lines.
scopeScopeConfignullRestrict container monitoring to specific Docker hosts.
never_monitorContainerMatchCriterianullContainers that should never be monitored, regardless of other rules.
defaultsModularDefaultsConfignullDefault settings applied to all container rules.
rulesContainerRule[]nullList of container monitoring rules.
groupsContainerGroupConfig[]nullGroups of rules sharing common config (scope, defaults, keywords).

container_events[]

ContainerEventConfig
FieldTypeDefaultRequiredDescription
trigger_onTriggerOnConfignullOnly trigger after a keyword matches a set number of times within a timeframe.
container_actionstringnullAction to perform on the container when this keyword is matched. One of `restart`, `stop`, `start`. Use 'action@container_name' to perform the action on a different container (this is always limited to the same host).
olivetin_actionsOliveTinAction[]nullList of OliveTin actions to trigger when this keyword is matched.
eventstringDocker container event to monitor. One of: start, stop, die, crash, destroy, healthy, unhealthy, starting, oom, kill, create, restart.
+ 29 overridable fields inherited from Shared Overridable Fields
FieldTypeDefaultDescription
ntfy_tagsstringnullComma-separated Ntfy tags or emoji shortcodes to include in the notification header.
ntfy_topicstringnullNtfy topic to publish notifications to.
ntfy_prioritystring | integernullNotification priority. One of `min`, `low`, `default`, `high`, `max` (or 1–5).
ntfy_urlstringnullBase URL of the Ntfy server (e.g. `https://ntfy.sh`).
ntfy_tokenstringnullAuthentication token for Ntfy.
ntfy_usernamestringnullUsername for Ntfy basic authentication.
ntfy_passwordstringnullPassword for Ntfy basic authentication.
ntfy_iconstringnullURL of an icon to display with the notification.
ntfy_clickstringnullURL to open when the notification is clicked.
ntfy_markdownbooleannullRender the notification body as Markdown.
ntfy_actionsNtfyViewAction[] | NtfyHttpAction[] | NtfyBroadcastAction[]nullList of Ntfy action buttons to attach to the notification.
ntfy_headersobjectnullCustom HTTP headers to include in the Ntfy request.
apprise_urlstringnullApprise-compatible notification URL (supports 100+ services).
webhook_urlstringnullHTTP endpoint to POST notification payloads to.
webhook_headersobjectnullCustom HTTP headers for webhook requests.
ignore_keywordsSimpleKeyword[] | SimpleRegex[]nullKeywords or regexes to suppress — matching log lines will not trigger notifications.
title_templatestringnullJinja2 template for the notification title. Use `{{ variable }}` placeholders (e.g. `{{ container_name }}`, `{{ keyword }}`).
message_templatestringnullJinja2 template for the notification message body. Use `{{ variable }}` placeholders (e.g. `{{ log_entry }}`, `{{ keyword }}`).
olivetin_urlstringnullBase URL of the OliveTin instance to trigger actions on.
olivetin_usernamestringnullUsername for OliveTin authentication.
olivetin_passwordstringnullPassword for OliveTin authentication.
attach_logfilebooleannullAttach recent log lines as a file to the notification.
trigger_cooldownintegernullMinimum seconds between repeated triggers for the same keyword on the same target. `0` disables cooldown.
container_action_cooldownintegernullMinimum seconds between repeated container actions (restart/stop) on the same target.
attachment_linesintegernullNumber of log lines to include in the log attachment.
hide_full_regexbooleannullIn notifications, hide the full regex match and only show named capturing groups.
regex_case_sensitivebooleannullWhether regex patterns are case-sensitive.
disable_trigger_notificationsbooleannullSuppress all trigger notifications. Useful when only container actions or OliveTin actions are needed.
merge_matchesbooleannullCombine multiple keyword matches from the same log entry into a single notification.

trigger_on

TriggerOnConfig
FieldTypeDefaultRequiredDescription
countintegerNumber of matches required within the timeframe to trigger.
timeframeintegerTime window in seconds within which `count` matches must occur.

olivetin_actions[]

OliveTinAction
FieldTypeDefaultRequiredDescription
idstringID of the OliveTin action to trigger.
argumentsOliveTinArgument[]nullList of named arguments to pass to the OliveTin action.
arguments[]
OliveTinArgument
FieldTypeDefaultRequiredDescription
namestringArgument name.
valuestringArgument value.

scope

ScopeConfig
FieldTypeDefaultRequiredDescription
hostsstring[]nullRestrict monitoring to specific Docker hosts by hostname.

never_monitor

ContainerMatchCriteria
FieldTypeDefaultRequiredDescription
container_namesstring[]List of glob patterns for container names to match (e.g. `my-container*`).

rules[]

ContainerRule
FieldTypeDefaultRequiredDescription
container_eventsContainerEventConfig[]nullEvents to monitor on containers. Triggers when the specified Docker lifecycle event occurs.
keywordsKeywordItem[] | RegexItem[] | AllOf[]nullList of keywords, regexes, or `all_of` groups to match in log lines.
idstringnullUnique identifier for this rule. Auto-generated if not provided.
enabledbooleantrueWhether this rule is active.
scopeScopeConfignullRestrict this rule to specific Docker hosts.
container_namestringnullShorthand for `match.include.container_names`. Accepts a single glob pattern for a container name (e.g. `my-container*`).
matchContainerMatchCriteria for matching the containers this rule applies to.
+ 29 overridable fields inherited from Shared Overridable Fields
FieldTypeDefaultDescription
ntfy_tagsstringnullComma-separated Ntfy tags or emoji shortcodes to include in the notification header.
ntfy_topicstringnullNtfy topic to publish notifications to.
ntfy_prioritystring | integernullNotification priority. One of `min`, `low`, `default`, `high`, `max` (or 1–5).
ntfy_urlstringnullBase URL of the Ntfy server (e.g. `https://ntfy.sh`).
ntfy_tokenstringnullAuthentication token for Ntfy.
ntfy_usernamestringnullUsername for Ntfy basic authentication.
ntfy_passwordstringnullPassword for Ntfy basic authentication.
ntfy_iconstringnullURL of an icon to display with the notification.
ntfy_clickstringnullURL to open when the notification is clicked.
ntfy_markdownbooleannullRender the notification body as Markdown.
ntfy_actionsNtfyViewAction[] | NtfyHttpAction[] | NtfyBroadcastAction[]nullList of Ntfy action buttons to attach to the notification.
ntfy_headersobjectnullCustom HTTP headers to include in the Ntfy request.
apprise_urlstringnullApprise-compatible notification URL (supports 100+ services).
webhook_urlstringnullHTTP endpoint to POST notification payloads to.
webhook_headersobjectnullCustom HTTP headers for webhook requests.
ignore_keywordsSimpleKeyword[] | SimpleRegex[]nullKeywords or regexes to suppress — matching log lines will not trigger notifications.
title_templatestringnullJinja2 template for the notification title. Use `{{ variable }}` placeholders (e.g. `{{ container_name }}`, `{{ keyword }}`).
message_templatestringnullJinja2 template for the notification message body. Use `{{ variable }}` placeholders (e.g. `{{ log_entry }}`, `{{ keyword }}`).
olivetin_urlstringnullBase URL of the OliveTin instance to trigger actions on.
olivetin_usernamestringnullUsername for OliveTin authentication.
olivetin_passwordstringnullPassword for OliveTin authentication.
attach_logfilebooleannullAttach recent log lines as a file to the notification.
trigger_cooldownintegernullMinimum seconds between repeated triggers for the same keyword on the same target. `0` disables cooldown.
container_action_cooldownintegernullMinimum seconds between repeated container actions (restart/stop) on the same target.
attachment_linesintegernullNumber of log lines to include in the log attachment.
hide_full_regexbooleannullIn notifications, hide the full regex match and only show named capturing groups.
regex_case_sensitivebooleannullWhether regex patterns are case-sensitive.
disable_trigger_notificationsbooleannullSuppress all trigger notifications. Useful when only container actions or OliveTin actions are needed.
merge_matchesbooleannullCombine multiple keyword matches from the same log entry into a single notification.

match

ContainerMatch
FieldTypeDefaultRequiredDescription
includeContainerMatchCriteriaContainers that must match.
excludeContainerMatchCriterianullContainers to exclude even if they match `include`.

groups[]

ContainerGroupConfig
FieldTypeDefaultRequiredDescription
container_eventsContainerEventConfig[]nullEvents to monitor on containers. Triggers when the specified Docker lifecycle event occurs.
keywordsKeywordItem[] | RegexItem[] | AllOf[]nullList of keywords, regexes, or `all_of` groups to match in log lines.
scopeScopeConfignullRestrict this group to specific Docker hosts. AND-combined with source-level scope.
never_monitorContainerMatchCriterianullContainers excluded from monitoring within this group only.
defaultsModularDefaultsConfignullDefault settings applied to all rules in this group.
rulesContainerRule[]Rules within this group. At least one rule is required.
swarm SwarmSourceConfig
FieldTypeDefaultRequiredDescription
container_eventsContainerEventConfig[]nullEvents to monitor on containers. Triggers when the specified Docker lifecycle event occurs.
keywordsKeywordItem[] | RegexItem[] | AllOf[]nullList of keywords, regexes, or `all_of` groups to match in log lines.
scopeScopeConfignullRestrict Swarm monitoring to specific Docker hosts.
never_monitorSwarmMatchCriterianullSwarm services that should never be monitored, regardless of other rules.
defaultsModularDefaultsConfignullDefault settings applied to all Swarm rules.
rulesSwarmRule[]nullList of Swarm service monitoring rules.
groupsSwarmGroupConfig[]nullGroups of rules sharing common config (scope, defaults, keywords).

never_monitor

SwarmMatchCriteria
FieldTypeDefaultRequiredDescription
stack_namesstring[]nullList of glob patterns for Swarm stack names to match (e.g. `my-stack*`).
service_namesstring[]nullList of glob patterns for Swarm service names to match (e.g. `my-service*`).

rules[]

SwarmRule
FieldTypeDefaultRequiredDescription
container_eventsContainerEventConfig[]nullEvents to monitor on containers. Triggers when the specified Docker lifecycle event occurs.
keywordsKeywordItem[] | RegexItem[] | AllOf[]nullList of keywords, regexes, or `all_of` groups to match in log lines.
idstringnullUnique identifier for this rule. Auto-generated if not provided.
enabledbooleantrueWhether this rule is active.
scopeScopeConfignullRestrict this rule to specific Docker hosts.
stack_namestringnullShorthand for `match.include.stack_names`. Accepts a single glob pattern for a stack name (e.g. `my-stack*`).
service_namestringnullShorthand for `match.include.service_names`. Accepts a single glob pattern for a service name (e.g. `my-service*`).
matchSwarmMatchCriteria for matching the Swarm services this rule applies to.
+ 29 overridable fields inherited from Shared Overridable Fields
FieldTypeDefaultDescription
ntfy_tagsstringnullComma-separated Ntfy tags or emoji shortcodes to include in the notification header.
ntfy_topicstringnullNtfy topic to publish notifications to.
ntfy_prioritystring | integernullNotification priority. One of `min`, `low`, `default`, `high`, `max` (or 1–5).
ntfy_urlstringnullBase URL of the Ntfy server (e.g. `https://ntfy.sh`).
ntfy_tokenstringnullAuthentication token for Ntfy.
ntfy_usernamestringnullUsername for Ntfy basic authentication.
ntfy_passwordstringnullPassword for Ntfy basic authentication.
ntfy_iconstringnullURL of an icon to display with the notification.
ntfy_clickstringnullURL to open when the notification is clicked.
ntfy_markdownbooleannullRender the notification body as Markdown.
ntfy_actionsNtfyViewAction[] | NtfyHttpAction[] | NtfyBroadcastAction[]nullList of Ntfy action buttons to attach to the notification.
ntfy_headersobjectnullCustom HTTP headers to include in the Ntfy request.
apprise_urlstringnullApprise-compatible notification URL (supports 100+ services).
webhook_urlstringnullHTTP endpoint to POST notification payloads to.
webhook_headersobjectnullCustom HTTP headers for webhook requests.
ignore_keywordsSimpleKeyword[] | SimpleRegex[]nullKeywords or regexes to suppress — matching log lines will not trigger notifications.
title_templatestringnullJinja2 template for the notification title. Use `{{ variable }}` placeholders (e.g. `{{ container_name }}`, `{{ keyword }}`).
message_templatestringnullJinja2 template for the notification message body. Use `{{ variable }}` placeholders (e.g. `{{ log_entry }}`, `{{ keyword }}`).
olivetin_urlstringnullBase URL of the OliveTin instance to trigger actions on.
olivetin_usernamestringnullUsername for OliveTin authentication.
olivetin_passwordstringnullPassword for OliveTin authentication.
attach_logfilebooleannullAttach recent log lines as a file to the notification.
trigger_cooldownintegernullMinimum seconds between repeated triggers for the same keyword on the same target. `0` disables cooldown.
container_action_cooldownintegernullMinimum seconds between repeated container actions (restart/stop) on the same target.
attachment_linesintegernullNumber of log lines to include in the log attachment.
hide_full_regexbooleannullIn notifications, hide the full regex match and only show named capturing groups.
regex_case_sensitivebooleannullWhether regex patterns are case-sensitive.
disable_trigger_notificationsbooleannullSuppress all trigger notifications. Useful when only container actions or OliveTin actions are needed.
merge_matchesbooleannullCombine multiple keyword matches from the same log entry into a single notification.

match

SwarmMatch
FieldTypeDefaultRequiredDescription
includeSwarmMatchCriteriaSwarm services that must match.
excludeSwarmMatchCriterianullSwarm services to exclude even if they match `include`.

groups[]

SwarmGroupConfig
FieldTypeDefaultRequiredDescription
container_eventsContainerEventConfig[]nullEvents to monitor on containers. Triggers when the specified Docker lifecycle event occurs.
keywordsKeywordItem[] | RegexItem[] | AllOf[]nullList of keywords, regexes, or `all_of` groups to match in log lines.
scopeScopeConfignullRestrict this group to specific Docker hosts. AND-combined with source-level scope.
never_monitorSwarmMatchCriterianullSwarm services excluded from monitoring within this group only.
defaultsModularDefaultsConfignullDefault settings applied to all rules in this group.
rulesSwarmRule[]Rules within this group. At least one rule is required.
notifications NotificationsConfig
FieldTypeDefaultRequiredDescription
ntfyNtfyConfignullNtfy push notification service configuration.
appriseAppriseConfignullApprise multi-service notification configuration.
webhookWebhookConfignullWebhook notification configuration.

ntfy

NtfyConfig
FieldTypeDefaultRequiredDescription
urlstringBase URL of the Ntfy server (e.g. `https://ntfy.sh`).
topicstringNtfy topic to publish notifications to.
tokenstringnullAuthentication token for Ntfy.
usernamestringnullUsername for Ntfy basic authentication.
passwordstringnullPassword for Ntfy basic authentication.
prioritystring | integer3Notification priority. One of `min`, `low`, `default`, `high`, `max` (or 1–5).
tagsstringkite,magComma-separated Ntfy tags or emoji shortcodes to include in the notification header.
iconstringnullURL of an icon to display with the notification.
clickstringnullURL to open when the notification is clicked.
markdownbooleannullRender the notification body as Markdown.
actionsNtfyViewAction[] | NtfyHttpAction[] | NtfyBroadcastAction[]nullList of Ntfy action buttons to attach to the notification.
headersobjectnullCustom HTTP headers to include in the Ntfy request.

apprise

AppriseConfig
FieldTypeDefaultRequiredDescription
urlstringApprise-compatible notification URL (supports 100+ services).

webhook

WebhookConfig
FieldTypeDefaultRequiredDescription
urlstringHTTP endpoint to POST notification payloads to.
headersobjectnullCustom HTTP headers for webhook requests.
global GlobalConfig
FieldTypeDefaultRequiredDescription
keywordsKeywordItem[] | RegexItem[] | AllOf[]nullList of keywords, regexes, or `all_of` groups to match in log lines.
defaultsRootDefaultsConfigRootDefaultsConfigGlobal default settings applied to all rules unless overridden.

defaults

RootDefaultsConfig
FieldTypeDefaultRequiredDescription
ntfy_tagsstringnullComma-separated Ntfy tags or emoji shortcodes to include in the notification header.
ntfy_topicstringnullNtfy topic to publish notifications to.
ntfy_prioritystring | integernullNotification priority. One of `min`, `low`, `default`, `high`, `max` (or 1–5).
ntfy_urlstringnullBase URL of the Ntfy server (e.g. `https://ntfy.sh`).
ntfy_tokenstringnullAuthentication token for Ntfy.
ntfy_usernamestringnullUsername for Ntfy basic authentication.
ntfy_passwordstringnullPassword for Ntfy basic authentication.
ntfy_iconstringnullURL of an icon to display with the notification.
ntfy_clickstringnullURL to open when the notification is clicked.
ntfy_markdownbooleannullRender the notification body as Markdown.
ntfy_actionsNtfyViewAction[] | NtfyHttpAction[] | NtfyBroadcastAction[]nullList of Ntfy action buttons to attach to the notification.
ntfy_headersobjectnullCustom HTTP headers to include in the Ntfy request.
apprise_urlstringnullApprise-compatible notification URL (supports 100+ services).
webhook_urlstringnullHTTP endpoint to POST notification payloads to.
webhook_headersobjectnullCustom HTTP headers for webhook requests.
ignore_keywordsSimpleKeyword[] | SimpleRegex[]nullKeywords or regexes to suppress — matching log lines will not trigger notifications.
title_templatestringnullJinja2 template for the notification title. Use `{{ variable }}` placeholders (e.g. `{{ container_name }}`, `{{ keyword }}`).
message_templatestringnullJinja2 template for the notification message body. Use `{{ variable }}` placeholders (e.g. `{{ log_entry }}`, `{{ keyword }}`).
olivetin_urlstringnullBase URL of the OliveTin instance to trigger actions on.
olivetin_usernamestringnullUsername for OliveTin authentication.
olivetin_passwordstringnullPassword for OliveTin authentication.
attach_logfilebooleanfalseAttach recent log lines as a file to the notification.
trigger_cooldowninteger0Minimum seconds between repeated triggers for the same keyword on the same target. `0` disables cooldown.
container_action_cooldowninteger60Minimum seconds between repeated container actions (restart/stop) on the same target.
attachment_linesinteger20Number of log lines to include in the log attachment.
hide_full_regexbooleanfalseIn notifications, hide the full regex match and only show named capturing groups.
regex_case_sensitivebooleantrueWhether regex patterns are case-sensitive.
disable_trigger_notificationsbooleanfalseSuppress all trigger notifications. Useful when only container actions or OliveTin actions are needed.
merge_matchesbooleanfalseCombine multiple keyword matches from the same log entry into a single notification.
settings SettingsConfig
FieldTypeDefaultRequiredDescription
log_levelstringINFOLog verbosity level. One of `DEBUG`, `INFO`, `WARNING`, `ERROR`.
multi_line_entriesbooleantrueCatch log entries that span multiple lines instead of going line by line.
compact_summary_messagebooleanfalseGet a comma-separated list of monitored targets instead of a multi-line list in startup and config reload notifications.
reload_configbooleantrueAutomatically reload configuration when the config file changes.
system_notificationsSystemNotifications | booleanSystemNotificationsSystem notifications settings. Can be set to a boolean to enable or disable all notifications or to a SystemNotifications object to enable or disable specific notifications.

system_notifications

SystemNotifications
FieldTypeDefaultRequiredDescription
startbooleantrueEnable the notification sent when LoggiFly starts.
shutdownbooleantrueEnable the notification sent when LoggiFly shuts down.
config_reloadbooleantrueEnable the notification sent when the config file is reloaded.
monitor_eventbooleantrueEnable the notification sent when a container starts or stops being monitored.

Appendix

Shared Overridable Fields

These fields can be set at multiple levels: under defaults, per rule, and per keyword/regex item. A value set at a deeper level overrides the parent.

FieldTypeDefaultRequiredDescription
ntfy_tagsstringnullComma-separated Ntfy tags or emoji shortcodes to include in the notification header.
ntfy_topicstringnullNtfy topic to publish notifications to.
ntfy_prioritystring | integernullNotification priority. One of `min`, `low`, `default`, `high`, `max` (or 1–5).
ntfy_urlstringnullBase URL of the Ntfy server (e.g. `https://ntfy.sh`).
ntfy_tokenstringnullAuthentication token for Ntfy.
ntfy_usernamestringnullUsername for Ntfy basic authentication.
ntfy_passwordstringnullPassword for Ntfy basic authentication.
ntfy_iconstringnullURL of an icon to display with the notification.
ntfy_clickstringnullURL to open when the notification is clicked.
ntfy_markdownbooleannullRender the notification body as Markdown.
ntfy_actionsNtfyViewAction[] | NtfyHttpAction[] | NtfyBroadcastAction[]nullList of Ntfy action buttons to attach to the notification.
ntfy_headersobjectnullCustom HTTP headers to include in the Ntfy request.
apprise_urlstringnullApprise-compatible notification URL (supports 100+ services).
webhook_urlstringnullHTTP endpoint to POST notification payloads to.
webhook_headersobjectnullCustom HTTP headers for webhook requests.
ignore_keywordsSimpleKeyword[] | SimpleRegex[]nullKeywords or regexes to suppress — matching log lines will not trigger notifications.
title_templatestringnullJinja2 template for the notification title. Use `{{ variable }}` placeholders (e.g. `{{ container_name }}`, `{{ keyword }}`).
message_templatestringnullJinja2 template for the notification message body. Use `{{ variable }}` placeholders (e.g. `{{ log_entry }}`, `{{ keyword }}`).
olivetin_urlstringnullBase URL of the OliveTin instance to trigger actions on.
olivetin_usernamestringnullUsername for OliveTin authentication.
olivetin_passwordstringnullPassword for OliveTin authentication.
attach_logfilebooleannullAttach recent log lines as a file to the notification.
trigger_cooldownintegernullMinimum seconds between repeated triggers for the same keyword on the same target. `0` disables cooldown.
container_action_cooldownintegernullMinimum seconds between repeated container actions (restart/stop) on the same target.
attachment_linesintegernullNumber of log lines to include in the log attachment.
hide_full_regexbooleannullIn notifications, hide the full regex match and only show named capturing groups.
regex_case_sensitivebooleannullWhether regex patterns are case-sensitive.
disable_trigger_notificationsbooleannullSuppress all trigger notifications. Useful when only container actions or OliveTin actions are needed.
merge_matchesbooleannullCombine multiple keyword matches from the same log entry into a single notification.

Union Types

These types appear as list items in discriminated-union array fields throughout the config. They are documented here separately because they may appear in multiple places.

NtfyViewAction

FieldTypeDefaultRequiredDescription
actionstringviewAction type. Must be `view`.
labelstringButton label shown in the notification.
urlstringURL to open when the action button is tapped.
clearbooleanfalseClear the notification after the action is triggered.

NtfyHttpAction

FieldTypeDefaultRequiredDescription
actionstringhttpAction type. Must be `http`.
labelstringButton label shown in the notification.
urlstringURL called by the HTTP action.
clearbooleanfalseClear the notification after the action is triggered.
methodstringnullHTTP method for the request (e.g. `GET`, `POST`).
headersobjectnullCustom HTTP headers to include in the request.
bodystringnullRequest body for the HTTP action.

NtfyBroadcastAction

FieldTypeDefaultRequiredDescription
actionstringbroadcastAction type. Must be `broadcast`.
labelstringButton label shown in the notification.
clearbooleanfalseClear the notification after the action is triggered.
intentstringnullAndroid intent for the broadcast action.
extrasobjectnullExtra key-value pairs for the Android intent.

SimpleKeyword

FieldTypeDefaultRequiredDescription
keywordstringPlain text string to search for in log lines.

SimpleRegex

FieldTypeDefaultRequiredDescription
regexstringRegular expression to match against log lines.

KeywordItem

FieldTypeDefaultRequiredDescription
trigger_onTriggerOnConfignullOnly trigger after a keyword matches a set number of times within a timeframe.
container_actionstringnullAction to perform on the container when this keyword is matched. One of `restart`, `stop`, `start`. Use 'action@container_name' to perform the action on a different container (this is always limited to the same host).
olivetin_actionsOliveTinAction[]nullList of OliveTin actions to trigger when this keyword is matched.
keywordstringPlain text string to search for in log lines.
+ 29 overridable fields inherited from Shared Overridable Fields
FieldTypeDefaultDescription
ntfy_tagsstringnullComma-separated Ntfy tags or emoji shortcodes to include in the notification header.
ntfy_topicstringnullNtfy topic to publish notifications to.
ntfy_prioritystring | integernullNotification priority. One of `min`, `low`, `default`, `high`, `max` (or 1–5).
ntfy_urlstringnullBase URL of the Ntfy server (e.g. `https://ntfy.sh`).
ntfy_tokenstringnullAuthentication token for Ntfy.
ntfy_usernamestringnullUsername for Ntfy basic authentication.
ntfy_passwordstringnullPassword for Ntfy basic authentication.
ntfy_iconstringnullURL of an icon to display with the notification.
ntfy_clickstringnullURL to open when the notification is clicked.
ntfy_markdownbooleannullRender the notification body as Markdown.
ntfy_actionsNtfyViewAction[] | NtfyHttpAction[] | NtfyBroadcastAction[]nullList of Ntfy action buttons to attach to the notification.
ntfy_headersobjectnullCustom HTTP headers to include in the Ntfy request.
apprise_urlstringnullApprise-compatible notification URL (supports 100+ services).
webhook_urlstringnullHTTP endpoint to POST notification payloads to.
webhook_headersobjectnullCustom HTTP headers for webhook requests.
ignore_keywordsSimpleKeyword[] | SimpleRegex[]nullKeywords or regexes to suppress — matching log lines will not trigger notifications.
title_templatestringnullJinja2 template for the notification title. Use `{{ variable }}` placeholders (e.g. `{{ container_name }}`, `{{ keyword }}`).
message_templatestringnullJinja2 template for the notification message body. Use `{{ variable }}` placeholders (e.g. `{{ log_entry }}`, `{{ keyword }}`).
olivetin_urlstringnullBase URL of the OliveTin instance to trigger actions on.
olivetin_usernamestringnullUsername for OliveTin authentication.
olivetin_passwordstringnullPassword for OliveTin authentication.
attach_logfilebooleannullAttach recent log lines as a file to the notification.
trigger_cooldownintegernullMinimum seconds between repeated triggers for the same keyword on the same target. `0` disables cooldown.
container_action_cooldownintegernullMinimum seconds between repeated container actions (restart/stop) on the same target.
attachment_linesintegernullNumber of log lines to include in the log attachment.
hide_full_regexbooleannullIn notifications, hide the full regex match and only show named capturing groups.
regex_case_sensitivebooleannullWhether regex patterns are case-sensitive.
disable_trigger_notificationsbooleannullSuppress all trigger notifications. Useful when only container actions or OliveTin actions are needed.
merge_matchesbooleannullCombine multiple keyword matches from the same log entry into a single notification.

RegexItem

FieldTypeDefaultRequiredDescription
trigger_onTriggerOnConfignullOnly trigger after a keyword matches a set number of times within a timeframe.
container_actionstringnullAction to perform on the container when this keyword is matched. One of `restart`, `stop`, `start`. Use 'action@container_name' to perform the action on a different container (this is always limited to the same host).
olivetin_actionsOliveTinAction[]nullList of OliveTin actions to trigger when this keyword is matched.
regexstringRegular expression to match against log lines. Named capturing groups can be used in notification templates.
+ 29 overridable fields inherited from Shared Overridable Fields
FieldTypeDefaultDescription
ntfy_tagsstringnullComma-separated Ntfy tags or emoji shortcodes to include in the notification header.
ntfy_topicstringnullNtfy topic to publish notifications to.
ntfy_prioritystring | integernullNotification priority. One of `min`, `low`, `default`, `high`, `max` (or 1–5).
ntfy_urlstringnullBase URL of the Ntfy server (e.g. `https://ntfy.sh`).
ntfy_tokenstringnullAuthentication token for Ntfy.
ntfy_usernamestringnullUsername for Ntfy basic authentication.
ntfy_passwordstringnullPassword for Ntfy basic authentication.
ntfy_iconstringnullURL of an icon to display with the notification.
ntfy_clickstringnullURL to open when the notification is clicked.
ntfy_markdownbooleannullRender the notification body as Markdown.
ntfy_actionsNtfyViewAction[] | NtfyHttpAction[] | NtfyBroadcastAction[]nullList of Ntfy action buttons to attach to the notification.
ntfy_headersobjectnullCustom HTTP headers to include in the Ntfy request.
apprise_urlstringnullApprise-compatible notification URL (supports 100+ services).
webhook_urlstringnullHTTP endpoint to POST notification payloads to.
webhook_headersobjectnullCustom HTTP headers for webhook requests.
ignore_keywordsSimpleKeyword[] | SimpleRegex[]nullKeywords or regexes to suppress — matching log lines will not trigger notifications.
title_templatestringnullJinja2 template for the notification title. Use `{{ variable }}` placeholders (e.g. `{{ container_name }}`, `{{ keyword }}`).
message_templatestringnullJinja2 template for the notification message body. Use `{{ variable }}` placeholders (e.g. `{{ log_entry }}`, `{{ keyword }}`).
olivetin_urlstringnullBase URL of the OliveTin instance to trigger actions on.
olivetin_usernamestringnullUsername for OliveTin authentication.
olivetin_passwordstringnullPassword for OliveTin authentication.
attach_logfilebooleannullAttach recent log lines as a file to the notification.
trigger_cooldownintegernullMinimum seconds between repeated triggers for the same keyword on the same target. `0` disables cooldown.
container_action_cooldownintegernullMinimum seconds between repeated container actions (restart/stop) on the same target.
attachment_linesintegernullNumber of log lines to include in the log attachment.
hide_full_regexbooleannullIn notifications, hide the full regex match and only show named capturing groups.
regex_case_sensitivebooleannullWhether regex patterns are case-sensitive.
disable_trigger_notificationsbooleannullSuppress all trigger notifications. Useful when only container actions or OliveTin actions are needed.
merge_matchesbooleannullCombine multiple keyword matches from the same log entry into a single notification.

AllOf

FieldTypeDefaultRequiredDescription
trigger_onTriggerOnConfignullOnly trigger after a keyword matches a set number of times within a timeframe.
container_actionstringnullAction to perform on the container when this keyword is matched. One of `restart`, `stop`, `start`. Use 'action@container_name' to perform the action on a different container (this is always limited to the same host).
olivetin_actionsOliveTinAction[]nullList of OliveTin actions to trigger when this keyword is matched.
all_ofSimpleKeyword[] | SimpleRegex[]List of keywords/regexes that must all be present in a log entry to trigger.
+ 29 overridable fields inherited from Shared Overridable Fields
FieldTypeDefaultDescription
ntfy_tagsstringnullComma-separated Ntfy tags or emoji shortcodes to include in the notification header.
ntfy_topicstringnullNtfy topic to publish notifications to.
ntfy_prioritystring | integernullNotification priority. One of `min`, `low`, `default`, `high`, `max` (or 1–5).
ntfy_urlstringnullBase URL of the Ntfy server (e.g. `https://ntfy.sh`).
ntfy_tokenstringnullAuthentication token for Ntfy.
ntfy_usernamestringnullUsername for Ntfy basic authentication.
ntfy_passwordstringnullPassword for Ntfy basic authentication.
ntfy_iconstringnullURL of an icon to display with the notification.
ntfy_clickstringnullURL to open when the notification is clicked.
ntfy_markdownbooleannullRender the notification body as Markdown.
ntfy_actionsNtfyViewAction[] | NtfyHttpAction[] | NtfyBroadcastAction[]nullList of Ntfy action buttons to attach to the notification.
ntfy_headersobjectnullCustom HTTP headers to include in the Ntfy request.
apprise_urlstringnullApprise-compatible notification URL (supports 100+ services).
webhook_urlstringnullHTTP endpoint to POST notification payloads to.
webhook_headersobjectnullCustom HTTP headers for webhook requests.
ignore_keywordsSimpleKeyword[] | SimpleRegex[]nullKeywords or regexes to suppress — matching log lines will not trigger notifications.
title_templatestringnullJinja2 template for the notification title. Use `{{ variable }}` placeholders (e.g. `{{ container_name }}`, `{{ keyword }}`).
message_templatestringnullJinja2 template for the notification message body. Use `{{ variable }}` placeholders (e.g. `{{ log_entry }}`, `{{ keyword }}`).
olivetin_urlstringnullBase URL of the OliveTin instance to trigger actions on.
olivetin_usernamestringnullUsername for OliveTin authentication.
olivetin_passwordstringnullPassword for OliveTin authentication.
attach_logfilebooleannullAttach recent log lines as a file to the notification.
trigger_cooldownintegernullMinimum seconds between repeated triggers for the same keyword on the same target. `0` disables cooldown.
container_action_cooldownintegernullMinimum seconds between repeated container actions (restart/stop) on the same target.
attachment_linesintegernullNumber of log lines to include in the log attachment.
hide_full_regexbooleannullIn notifications, hide the full regex match and only show named capturing groups.
regex_case_sensitivebooleannullWhether regex patterns are case-sensitive.
disable_trigger_notificationsbooleannullSuppress all trigger notifications. Useful when only container actions or OliveTin actions are needed.
merge_matchesbooleannullCombine multiple keyword matches from the same log entry into a single notification.