Skip to content

Config File Schema

The config.json file controls all aspects of Goxe’s behavior, from networking to aggregation logic. It is located in your system’s standard configuration directory (e.g., ~/.config/goxe/config.json on Linux).

PropertyTypeDefaultDescription
portnumber1729The UDP port Goxe listens on to receive incoming log streams.
idLogstring"hostname"Field used to identify the source of the logs (e.g., hostname, app name).
pattenersWordsstring[][]A list of strings/words that Goxe should ignore when processing logs.
webhookUrlsstring[][]List of Slack/Discord webhook URLs for burst notifications.
ReportIntervalnumber60Time interval in minutes between summary reports.
BufferUdpSizenumber4Size of the UDP buffer in MB for receiving logs.
destinationstring"socket"Output format/destination of the logs (currently only "socket" is supported).
integrationsobject[][]List of HTTP endpoints to send normalized logs to.

Configuration for sending logs to external HTTP observability platforms.

PropertyTypeDefaultDescription
urlstring-The destination HTTP endpoint (e.g., a Cloudflare Worker URL).
headersobject{}Key-value pairs of HTTP headers (useful for auth tokens).
onAggregationbooleantrueToggles this specific integration on or off.

Options for local log file archival.

PropertyTypeDefaultDescription
generateLogsFilebooleanfalseIf true, Goxe will save aggregated logs to the local cache directory.
hourstring"00:00:00"The specific time (HH:MM:SS) to trigger the daily log rotation/generation.

Thresholds for identifying log spikes.

PropertyTypeDefaultDescription
limitBreaknumber10Number of identical logs per second required to trigger a “burst” alert.

Configuration for forwarding processed data to external collectors.

PropertyTypeDefaultDescription
addressstring"127.0.0.1:5045"Destination address (IP:Port) for the processed logs.
protocolstring"tcp"Network protocol used for shipping (tcp or udp).
flushIntervalnumber30How often (in seconds) to flush the buffer to the destination.