@@ -31,39 +31,45 @@ defmodule ErrorTracker.Telemetry do
3131 Each event is emitted with some measures and metadata, which can be used to
3232 receive information without having to query the database again:
3333
34- | event | measures | metadata |
35- | --------------------------------------- | -------------- | ------------- |
36- | `[:error_tracker, :error, :new]` | `:system_time` | `:error` |
37- | `[:error_tracker, :error, :unresolved]` | `:system_time` | `:error` |
38- | `[:error_tracker, :error, :resolved]` | `:system_time` | `:error` |
39- | `[:error_tracker, :occurrence, :new]` | `:system_time` | `:occurrence` |
34+ | event | measures | metadata |
35+ | --------------------------------------- | -------------- | ----------------------------------|
36+ | `[:error_tracker, :error, :new]` | `:system_time` | `:error` |
37+ | `[:error_tracker, :error, :unresolved]` | `:system_time` | `:error` |
38+ | `[:error_tracker, :error, :resolved]` | `:system_time` | `:error` |
39+ | `[:error_tracker, :occurrence, :new]` | `:system_time` | `:occurrence`, `:error`, `:muted` |
40+
41+ The metadata keys contain the following data:
42+
43+ * `:error` - An `%ErrorTracker.Error{}` struct representing the error.
44+ * `:occurrence` - An `%ErrorTracker.Occurrence{}` struct representing the occurrence.
45+ * `:muted` - A boolean indicating whether the error is muted or not.
4046 """
4147
4248 @ doc false
43- def new_error ( error ) do
49+ def new_error ( error = % ErrorTracker.Error { } ) do
4450 measurements = % { system_time: System . system_time ( ) }
4551 metadata = % { error: error }
4652 :telemetry . execute ( [ :error_tracker , :error , :new ] , measurements , metadata )
4753 end
4854
4955 @ doc false
50- def unresolved_error ( error ) do
56+ def unresolved_error ( error = % ErrorTracker.Error { } ) do
5157 measurements = % { system_time: System . system_time ( ) }
5258 metadata = % { error: error }
5359 :telemetry . execute ( [ :error_tracker , :error , :unresolved ] , measurements , metadata )
5460 end
5561
5662 @ doc false
57- def resolved_error ( error ) do
63+ def resolved_error ( error = % ErrorTracker.Error { } ) do
5864 measurements = % { system_time: System . system_time ( ) }
5965 metadata = % { error: error }
6066 :telemetry . execute ( [ :error_tracker , :error , :resolved ] , measurements , metadata )
6167 end
6268
6369 @ doc false
64- def new_occurrence ( occurrence ) do
70+ def new_occurrence ( occurrence = % ErrorTracker.Occurrence { } , muted ) when is_boolean ( muted ) do
6571 measurements = % { system_time: System . system_time ( ) }
66- metadata = % { occurrence: occurrence }
72+ metadata = % { error: occurrence . error , occurrence : occurrence , muted: muted }
6773 :telemetry . execute ( [ :error_tracker , :occurrence , :new ] , measurements , metadata )
6874 end
6975end
0 commit comments