Packages

A grab bag of utilities I tend to want, so I can build faster.

Current section

Files

Jump to
fast lib gcp google_cloud_logger.ex
Raw

lib/gcp/google_cloud_logger.ex

defmodule Fast.Utils.GoogleCloudLogger do
@moduledoc """
This simply extends `LoggerJSON.Formatters.GoogleCloudLogger` to
include a log `@type` value for error logs that indicates to
Stackdriver logging to consider the logentry a ReportedErrorEvent.
"""
def format_event(:error, msg, ts, md, md_keys, formatter_state) do
base =
LoggerJSON.Formatters.GoogleCloudLogger.format_event(
:error,
msg,
ts,
md,
md_keys,
formatter_state
)
Map.merge(
base,
%{
"@type" =>
"type.googleapis.com/google.devtools.clouderrorreporting.v1beta1.ReportedErrorEvent"
}
)
end
def format_event(level, msg, ts, md, md_keys, formatter_state) do
LoggerJSON.Formatters.GoogleCloudLogger.format_event(
level,
msg,
ts,
md,
md_keys,
formatter_state
)
end
end