Logging backend in common use across PlaceOS services.
A UDP stream will be opened to a log server if UDP_LOG_HOST
and UDP_LOG_PORT
are in the environment.
require "placeos-log-backend"
require "placeos-log-backend/telemetry"
log_backend = PlaceOS::LogBackend.log_backend
Log.setup "*", :warn, log_backend
# Use `namespaces` array to configure any namespaces you wish to have
# runtime severity switching on.
PlaceOS::LogBackend.register_severity_switch_signals(
production: App.production?,
namespaces: namespaces,
backend: log_backend,
)
# To configure OpenTelemetry
#
# *OTLP configuration*
# - `OTEL_EXPORTER_OTLP_ENDPOINT`
# - `OTEL_EXPORTER_OTLP_HEADERS`: e.g `Hello=world,Foo=bar`
#
# *Api Keys*
# - `OTEL_EXPORTER_OTLP_API_KEY`
# - `NEW_RELIC_LICENSE_KEY`
# - `ELASTIC_APM_API_KEY`
PlaceOS::LogBackend.configure_opentelemetry(
service_name: APP_NAME,
service_version: VERSION,
endpoint: OTEL_EXPORTER_OTLP_ENDPOINT,
)
- Caspian Baska - creator and maintainer