Skip to content

Commit d9936a8

Browse files
committed
WIP - fix log formatting under 1.14
1 parent f375551 commit d9936a8

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed

lib/sentry/logger_handler.ex

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -375,6 +375,50 @@ defmodule Sentry.LoggerHandler do
375375
%{format: ~c"Ranch listener ~p" ++ _, args: args} ->
376376
capture_from_ranch_error(args, sentry_opts, config)
377377

378+
# %{
379+
# label: {:proc_lib, :crash},
380+
# report: [
381+
# [
382+
# initial_call: {Phoenix.LiveReloader.Channel, :join, [:Argument__1, :Argument__2, :Argument__3]},
383+
# pid: "pid id",
384+
# registered_name: [],
385+
# error_info: {
386+
# :error,
387+
# %ArgumentError{message: "unknown registry: PhoenixApp.PubSub"},
388+
# [
389+
# {Registry, :info!, 1, [file: 'lib/registry.ex', line: 1373]},
390+
# {Registry, :register, 3, [file: 'lib/registry.ex', line: 989]},
391+
# {Phoenix.PubSub, :subscribe, 3, [file: 'lib/phoenix/pubsub.ex', line: 121]},
392+
# {Phoenix.Channel.Server, :init_join, 3, [file: 'lib/phoenix/channel/server.ex', line: 434]},
393+
# {Phoenix.Channel.Server, :channel_join, 4, [file: 'lib/phoenix/channel/server.ex', line: 396]},
394+
# {Phoenix.Channel.Server, :handle_info, 2, [file: 'lib/phoenix/channel/server.ex', line: 305]},
395+
# {:gen_server, :try_handle_info, 3, [file: 'gen_server.erl', line: 1095]},
396+
# {:gen_server, :handle_msg, 6, [file: 'gen_server.erl', line: 1183]},
397+
# {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 241]}
398+
# ]
399+
# },
400+
# ancestors: ["pid id", PhoenixAppWeb.Endpoint.Phoenix.LiveReloader.Socket, PhoenixAppWeb.Endpoint, PhoenixApp.Supervisor, "pid id"],
401+
# message_queue_len: 0,
402+
# messages: [],
403+
# links: ["pid id"],
404+
# dictionary: ["$callers": ["pid id"]],
405+
# trap_exit: false,
406+
# status: :running,
407+
# heap_size: 17731,
408+
# stack_size: 28,
409+
# reductions: 15540
410+
# ],
411+
# []
412+
# ]
413+
# }
414+
%{label: {lib, reason}, report: report} when is_list(report) ->
415+
error = Enum.find(report, fn {name, _value} -> name == :error_info end)
416+
{_, exception, stacktrace} = error
417+
418+
sentry_opts = Keyword.merge(sentry_opts, stacktrace: stacktrace, handled: false)
419+
420+
capture(:exception, exception, sentry_opts, config)
421+
378422
_ ->
379423
capture(:message, inspect(report), sentry_opts, config)
380424
end

0 commit comments

Comments
 (0)