package
0.5.5
Repository: https://github.com/atc0005/brick.git
Documentation: pkg.go.dev

# Functions

GetNotificationTimeout calculates the timeout value for the entire message submission process, including the initial attempt and all retry attempts.
MessageTrailer generates a branded "footer" for use with notifications.
NewConfig is a factory function that produces a new Config object based on user provided values.
Version exports the raw version string for this application.

# Constants

BrandingMarkdownFormat is used as a Markdown-compatible template for message "trailers" or "footers" on outgoing notifications.
BrandingTextileFormat is used as a Textile-compatible template for message "trailers" or "footers" on outgoing notifications.
TODO: Expose these settings via flags, config file Timeout settings applied to our instance of http.Server.
TODO: Expose these settings via flags, config file Timeout settings applied to our instance of http.Server.
HTTPServerShutdownTimeout is used by the graceful shutdown process to control how long the shutdown process should wait before forcefully terminating.
TODO: Expose these settings via flags, config file Timeout settings applied to our instance of http.Server.
LogFormatCLI provides human-friendly CLI output.
LogFormatDiscard discards all logs.
LogFormatJSON provides JSON output.
LogFormatLogFmt provides logfmt plain-text output.
LogFormatText provides human-friendly colored output.
LogLevelDebug is for debug-level messages and is usually enabled when debugging.
LogLevelError is for errors that should definitely be noted.
LogLevelFatal is used for errors that should definitely be noted.
LogLevelInfo is for general application operational entries.
LogLevelWarn is for non-critical entries that deserve eyes.
LogOutputStderr represents os.Stderr.
LogOutputStdout represents os.Stdout.
MyAppDescription is the description for this application shown in HelpText output.
MyAppName is the public name of this application.
MyAppURL is the location of the repo for this application.
NotifyMgrEmailNotificationTimeout is the timeout setting applied to each email notification attempt.
NotifyMgrQueueDepth is the number of items allowed into the queue/channel at one time.
NotifyMgrServicesShutdownTimeout is used by the NotifyMgr to determine how long it should wait for results from each notifier or notifier "service" before continuing on with the shutdown process.
NotifyMgrTeamsNotificationTimeout is the timeout setting applied to each Microsoft Teams notification attempt.
NotifyQueueMonitorDelay limits notification queue stats logging to no more often than this duration.
NotifyStatsMonitorDelay limits notification stats logging to no more often than this duration.
TCP port ranges http://www.iana.org/assignments/port-numbers Port numbers are assigned in various ways, based on three ranges: System Ports (0-1023), User Ports (1024-49151), and the Dynamic and/or Private Ports (49152-65535).
TCP port ranges http://www.iana.org/assignments/port-numbers Port numbers are assigned in various ways, based on three ranges: System Ports (0-1023), User Ports (1024-49151), and the Dynamic and/or Private Ports (49152-65535).
TCP port ranges http://www.iana.org/assignments/port-numbers Port numbers are assigned in various ways, based on three ranges: System Ports (0-1023), User Ports (1024-49151), and the Dynamic and/or Private Ports (49152-65535).
TCP port ranges http://www.iana.org/assignments/port-numbers Port numbers are assigned in various ways, based on three ranges: System Ports (0-1023), User Ports (1024-49151), and the Dynamic and/or Private Ports (49152-65535).
TCP port ranges http://www.iana.org/assignments/port-numbers Port numbers are assigned in various ways, based on three ranges: System Ports (0-1023), User Ports (1024-49151), and the Dynamic and/or Private Ports (49152-65535).
TCP port ranges http://www.iana.org/assignments/port-numbers Port numbers are assigned in various ways, based on three ranges: System Ports (0-1023), User Ports (1024-49151), and the Dynamic and/or Private Ports (49152-65535).
TCP port ranges http://www.iana.org/assignments/port-numbers Port numbers are assigned in various ways, based on three ranges: System Ports (0-1023), User Ports (1024-49151), and the Dynamic and/or Private Ports (49152-65535).

# Structs

Config is a unified set of configuration values for this application.
DisabledUsers represents the path to, and permissions for, the file generated by this application containing disabled accounts that EZproxy should import and disabled from logging in.
Email represents the various configuration settings ued to send email notifications.
EZproxy represents that various configuration settings used to interact with EZproxy and files/settings used by EZproxy.
IgnoredIPAddresses represents the fully-qualified path to the file containing a list of individual IP Addresses which should not be banned by this application.
IgnoredUsers represents the fully-qualified path to the file containing a list of user accounts which should not be disabled and whose associated IP should not be banned by this application.
Logging is a collection of logging-related settings provided via CLI and config file sources.
MSTeams represents the various configuration settings used to send notifications to a Microsoft Teams channel.
Network is a collection of network-related settings provided via CLI and config file sources.
ReportedUsers represents the path to, and permissions for, the file generated by this application for review by fail2ban for potential IP-ban actions and humans alike.

# Type aliases

BrandingFormat is a type used to emulate a set of enums for use with defining the format used in footer or "message trailers".