Add logger filter to drop repetitive 'Cannot find module' errors from net-snmp library. These errors occur when snmptranslate can't find vendor-specific MIB modules but don't affect functionality since the system falls back to numeric OIDs. The errors were flooding production logs (hundreds of identical messages) during polling of Morningstar devices that reference TRISTAR MIB modules. Changes: - Add drop_snmp_mib_errors/2 filter to LoggerFilters module - Register filter in production logger configuration - Filter matches exact error format from snmptranslate stderr The root cause (missing NIF binary) will be addressed separately by compiling the towerops_nif.so during Docker build. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
33 lines
1 KiB
Elixir
33 lines
1 KiB
Elixir
import Config
|
|
|
|
# Filter out harmless Oban shutdown messages and repetitive SNMP MIB errors
|
|
config :logger, :default_handler,
|
|
filters: [
|
|
drop_oban_shutdown: {
|
|
&Towerops.LoggerFilters.drop_oban_shutdown/2,
|
|
[]
|
|
},
|
|
drop_snmp_mib_errors: {
|
|
&Towerops.LoggerFilters.drop_snmp_mib_errors/2,
|
|
[]
|
|
}
|
|
]
|
|
|
|
# Do not print debug messages in production
|
|
config :logger,
|
|
level: :info,
|
|
metadata_filter: [oban_shutdown_filter: true]
|
|
|
|
# Configure Swoosh API Client
|
|
config :swoosh, api_client: Swoosh.ApiClient.Req
|
|
|
|
# Disable Swoosh Local Memory Storage
|
|
config :swoosh, local: false
|
|
|
|
# Note we also include the path to a cache manifest
|
|
# containing the digested version of static files. This
|
|
# manifest is generated by the `mix assets.deploy` task,
|
|
# which you should run after static files are built and
|
|
# before starting your production server.
|
|
config :towerops, ToweropsWeb.Endpoint, cache_static_manifest: "priv/static/cache_manifest.json"
|
|
# SSL/TLS is handled by Cloudflared proxy - no force_ssl needed
|