module

Grafito

Constants

Log = ::Log.for(self)

Setup a logger for this module.

VERSION = {{ (`shards version /tmp/tmp.jCbNML/src/src/../`).chomp.stringify }}

Obtain the version number automatically at compile time from shard.yml

Class methods

ai_enabled?

Convenience method for checking if AI is available (backward compatible)

Source
ai_provider

AI provider instance - nil if no provider is configured

Source
ai_provider=(ai_provider : AI::Provider | Nil)

AI provider instance - nil if no provider is configured

Source
allowed_units

Global unit restriction - when set, only logs from these units will be shown

Source
allowed_units=(allowed_units : Array(String) | Nil)

Global unit restriction - when set, only logs from these units will be shown

Source
base_path

Base path for deployment (e.g., "/" or "/grafito")

Source
base_path=(base_path : String)

Base path for deployment (e.g., "/" or "/grafito")

Source
register_routes

Register all Kemal routes (called after base_path is set) ameba:disable Metrics/CyclomaticComplexity

Source
timezone

Timezone configuration for timestamp display

Source
timezone=(timezone : String)

Timezone configuration for timestamp display

Source
user_mode=(user_mode : Bool)

User systemd mode - when enabled, use --user flag for journalctl/systemctl

Source
user_mode?

User systemd mode - when enabled, use --user flag for journalctl/systemctl

Source

Instance methods

_generate_text_log_output(logs : Array(Journalctl::LogEntry)) : String

Generates a plain text representation of log entries.

Source

Nested types