Packages
appsignal
2.15.11
2.17.4
2.17.3
2.17.2
2.17.1
2.17.0
2.16.0
2.15.11
2.15.10
2.15.9
2.15.8
2.15.7
2.15.6
2.15.5
2.15.4
2.15.3
2.15.2
2.15.1
2.15.0
2.14.1
2.14.0
2.13.4
2.13.3
2.13.2
2.13.1
2.13.0
2.12.3
2.12.2
2.12.1
2.12.0
2.11.0
2.10.2
2.10.1
2.10.0
2.9.2
2.9.1
2.9.0
2.8.3
2.8.2
2.8.1
2.8.0
2.7.13
2.7.12
2.7.11
2.7.10
2.7.9
2.7.8
2.7.7
2.7.6
2.7.5
2.7.4
2.7.3
2.7.2
2.7.1
2.7.0
2.7.0-beta.1
2.6.1
2.6.0
2.5.3
2.5.2
2.5.1
2.5.0
2.4.3
2.4.2
2.4.1
2.4.0
2.3.1
2.3.0
2.2.19
2.2.18
2.2.17
2.2.16
2.2.15
2.2.14
2.2.13
2.2.12
retired
2.2.11
2.2.10
2.2.9
2.2.8
2.2.7
2.2.6
2.2.5
2.2.4
2.2.3
2.2.2
2.2.1
2.2.0
2.1.15
2.1.14
2.1.13
2.1.12
2.1.11
2.1.10
2.1.9
2.1.8
2.1.7
2.1.7-beta.1
2.1.6
2.1.5
2.1.4
2.1.3
2.1.2
2.1.1
2.1.0
2.0.8
2.0.7
2.0.6
2.0.6-beta.1
2.0.5
retired
2.0.4
retired
2.0.3
retired
2.0.2
retired
2.0.1
retired
2.0.0
retired
2.0.0-beta.11
2.0.0-beta.10
2.0.0-beta.9
2.0.0-beta.8
2.0.0-beta.7
2.0.0-beta.6
2.0.0-beta.5
2.0.0-beta.4
2.0.0-beta.3
2.0.0-beta.2
2.0.0-beta.1
2.0.0-alpha.7
2.0.0-alpha.6
2.0.0-alpha.5
2.0.0-alpha.4
2.0.0-alpha.3
2.0.0-alpha.2
2.0.0-alpha.1
1.13.5
1.13.4
1.13.3
1.13.2
1.13.1
1.13.0
1.13.0-beta.2
1.13.0-beta.1
1.12.1
1.12.0
1.12.0-beta.3
1.12.0-beta.2
1.12.0-beta.1
1.11.8
1.11.7
1.11.6
1.11.5
1.11.4
1.11.3
1.11.2
1.11.1
1.11.0
1.11.0-beta.1
1.10.13
1.10.12
1.10.11
1.10.10
1.10.9
1.10.8
1.10.7
1.10.6
1.10.5
1.10.4
1.10.3
1.10.2
1.10.1
1.10.0
1.9.4
1.9.3
1.9.2
1.9.1
1.9.1-beta.1
1.9.0
1.9.0-beta.1
1.9.0-alpha.1
1.8.2
1.8.1
1.8.1-beta.2
1.8.1-beta.1
1.8.0
1.7.2
1.7.1
1.7.0
1.7.0-beta.2
1.7.0-beta.1
1.7.0-alpha.4
1.7.0-alpha.3
1.7.0-alpha.2
1.7.0-alpha.1
1.6.7
1.6.6
1.6.6-beta.2
1.6.6-beta.1
1.6.5
1.6.4
1.6.3
1.6.2
1.6.1
1.6.0
1.6.0-beta.1
1.6.0-alpha.1
1.5.1
1.5.0
1.5.0-beta.2
1.5.0-beta.1
1.4.11-beta.1
1.4.10
1.4.9
1.4.8
1.4.7
1.4.6
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.4.0-alpha.1
1.3.6
1.3.6-beta.1
1.3.5
1.3.4
1.3.4-beta.1
1.3.3
1.3.2
1.3.1
1.3.0
1.3.0-beta.3
1.3.0-beta.2
1.3.0-beta.1
1.2.3
1.2.2
1.2.1
1.2.0
1.1.1
1.1.0
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
1.0.0-rc.1
0.13.0
0.12.3
0.12.2
0.12.1
0.12.0
0.11.6
0.11.5
0.11.4
0.11.3
0.11.2
0.11.1
0.11.0
0.10.0
0.9.2
0.9.1
0.9.0
0.8.0
0.7.1
0.7.0
0.6.2
0.6.1
0.6.0
0.5.0
0.4.0
0.3.0
0.2.0
0.1.0
0.0.9
0.0.8
0.0.7
0.0.6
0.0.5
0.0.4
0.0.3
0.0.2
0.0.1
Collects error and performance data from your Elixir applications and sends it to AppSignal
Current section
280 Versions
Jump to
Current section
280 Versions
Compare versions
7
files changed
+103
additions
-79
deletions
| @@ -1,12 +1,30 @@ | |
| 1 1 | # AppSignal for Elixir changelog |
| 2 2 | |
| 3 | + ## 2.15.11 |
| 4 | + |
| 5 | + _Published on 2025-10-09._ |
| 6 | + |
| 7 | + ### Added |
| 8 | + |
| 9 | + - Add support for Oban timeout exceptions (patch [465a3858](https://github.com/appsignal/appsignal-elixir/commit/465a385806c7edddfe1188d40a52bb92cce365eb), [ac4effed](https://github.com/appsignal/appsignal-elixir/commit/ac4effed4e11096727dbb3740014b4672dd23f10)) |
| 10 | + |
| 11 | + ### Changed |
| 12 | + |
| 13 | + - Detect the log format automatically. We now detect if a log line is in the JSON, Logfmt or plaintext formats. No further config needed when calling our logger, like so: |
| 14 | + |
| 15 | + ```elixir |
| 16 | + Appsignal.Logger.info("group", "message") |
| 17 | + ``` |
| 18 | + |
| 19 | + (patch [756dac39](https://github.com/appsignal/appsignal-elixir/commit/756dac39396a6f07d159747471bf663e7146d003)) |
| 20 | + |
| 3 21 | ## 2.15.10 |
| 4 22 | |
| 5 23 | _Published on 2025-07-22._ |
| 6 24 | |
| 7 25 | ### Fixed |
| 8 26 | |
| 9 | - - Fix compatibility with Phoenix 1.18's parameter filtering compiled patterns. This will errors on boot about the AppSignal handlers not attaching. (patch [1449b9e9](https://github.com/appsignal/appsignal-elixir/commit/1449b9e9e61beea9dd249b29b86e539ebdf6303a)) |
| 27 | + - Fix compatibility with Phoenix 1.8's parameter filtering compiled patterns. This will errors on boot about the AppSignal handlers not attaching. (patch [1449b9e9](https://github.com/appsignal/appsignal-elixir/commit/1449b9e9e61beea9dd249b29b86e539ebdf6303a)) |
| 10 28 | |
| 11 29 | ## 2.15.9 |
| @@ -4,7 +4,7 @@ | |
| 4 4 | # Modifications to this file will be overwritten with the next agent release. |
| 5 5 | |
| 6 6 | defmodule Appsignal.Agent do |
| 7 | - def version, do: "0.36.6" |
| 7 | + def version, do: "0.36.7" |
| 8 8 | |
| 9 9 | def mirrors do |
| 10 10 | [ |
| @@ -16,55 +16,55 @@ defmodule Appsignal.Agent do | |
| 16 16 | def triples do |
| 17 17 | %{ |
| 18 18 | "x86_64-darwin" => %{ |
| 19 | - checksum: "b4a9453064663f969f2012d0fbbfad4566a35f3231d92d05c46b0e4fd15e62de", |
| 19 | + checksum: "18e94eb2750e9ed6cd31c00af684759abd32254b1db4c02af46e166b5346245b", |
| 20 20 | filename: "appsignal-x86_64-darwin-all-static.tar.gz" |
| 21 21 | }, |
| 22 22 | "universal-darwin" => %{ |
| 23 | - checksum: "b4a9453064663f969f2012d0fbbfad4566a35f3231d92d05c46b0e4fd15e62de", |
| 23 | + checksum: "18e94eb2750e9ed6cd31c00af684759abd32254b1db4c02af46e166b5346245b", |
| 24 24 | filename: "appsignal-x86_64-darwin-all-static.tar.gz" |
| 25 25 | }, |
| 26 26 | "aarch64-darwin" => %{ |
| 27 | - checksum: "fc1245fca1445c2eb25f9e4f0dd5809f86eefa7e96ea87a227891ce76af81bfc", |
| 27 | + checksum: "ca261c4422d5daadeff300512b9d3c466c5174113b7f3fcda36b28f8a51c1e43", |
| 28 28 | filename: "appsignal-aarch64-darwin-all-static.tar.gz" |
| 29 29 | }, |
| 30 30 | "arm64-darwin" => %{ |
| 31 | - checksum: "fc1245fca1445c2eb25f9e4f0dd5809f86eefa7e96ea87a227891ce76af81bfc", |
| 31 | + checksum: "ca261c4422d5daadeff300512b9d3c466c5174113b7f3fcda36b28f8a51c1e43", |
| 32 32 | filename: "appsignal-aarch64-darwin-all-static.tar.gz" |
| 33 33 | }, |
| 34 34 | "arm-darwin" => %{ |
| 35 | - checksum: "fc1245fca1445c2eb25f9e4f0dd5809f86eefa7e96ea87a227891ce76af81bfc", |
| 35 | + checksum: "ca261c4422d5daadeff300512b9d3c466c5174113b7f3fcda36b28f8a51c1e43", |
| 36 36 | filename: "appsignal-aarch64-darwin-all-static.tar.gz" |
| 37 37 | }, |
| 38 38 | "aarch64-linux" => %{ |
| 39 | - checksum: "41f69ec7e2d15a552897eb22a745fb6df2589d8b53909155c16bd5fe5d830c71", |
| 39 | + checksum: "aa2ab16361ab3d2709f050d7f83b5ba4c82c6e67e2b50201422147d6c266e205", |
| 40 40 | filename: "appsignal-aarch64-linux-all-static.tar.gz" |
| 41 41 | }, |
| 42 42 | "i686-linux" => %{ |
| 43 | - checksum: "abdaeca2c16362838ad0c81a36f55ae05638b9bc4cee647928e5c07c56582f6d", |
| 43 | + checksum: "ccbf51c5cc63c8812c40256853994fed8d20e48f78d60be3b4100ee1479bde95", |
| 44 44 | filename: "appsignal-i686-linux-all-static.tar.gz" |
| 45 45 | }, |
| 46 46 | "x86-linux" => %{ |
| 47 | - checksum: "abdaeca2c16362838ad0c81a36f55ae05638b9bc4cee647928e5c07c56582f6d", |
| 47 | + checksum: "ccbf51c5cc63c8812c40256853994fed8d20e48f78d60be3b4100ee1479bde95", |
| 48 48 | filename: "appsignal-i686-linux-all-static.tar.gz" |
| 49 49 | }, |
| 50 50 | "x86_64-linux" => %{ |
| 51 | - checksum: "ca8bf1da8e0477027000ecad7b224244d3ff3217fa90652841567aa76bb0e2dc", |
| 51 | + checksum: "59fa4c2b31f5f728174a7df66e034281c8b00b590ad4a69905e0e8d9ff8f4887", |
| 52 52 | filename: "appsignal-x86_64-linux-all-static.tar.gz" |
| 53 53 | }, |
| 54 54 | "x86_64-linux-musl" => %{ |
| 55 | - checksum: "dd9ea02fe7c0521a9761d94b232dd91d4fb2d39e73955872eb7b8344926d439d", |
| 55 | + checksum: "11d511eec05d257c8870e58845bd608760335cdb4e961dad0f62447cf94325a6", |
| 56 56 | filename: "appsignal-x86_64-linux-musl-all-static.tar.gz" |
| 57 57 | }, |
| 58 58 | "aarch64-linux-musl" => %{ |
| 59 | - checksum: "dab51a719c468faa87232fd4c1c5ea1ad43a3ec0fcade99cafe1d82b039e3708", |
| 59 | + checksum: "ac01b551ba723a5b51e4d14a2bf9da98cb70a4e6931976147ff5b7a570a4a631", |
| 60 60 | filename: "appsignal-aarch64-linux-musl-all-static.tar.gz" |
| 61 61 | }, |
| 62 62 | "x86_64-freebsd" => %{ |
| 63 | - checksum: "115abdd9452f37037e7cc1f0e5b205e00317142a1d1d31d84c5729e6fba3cd46", |
| 63 | + checksum: "a44e9498311c116f0cb0c404c1daaa8e1b3a4d759f0d93c5fee69824a86dfe37", |
| 64 64 | filename: "appsignal-x86_64-freebsd-all-static.tar.gz" |
| 65 65 | }, |
| 66 66 | "amd64-freebsd" => %{ |
| 67 | - checksum: "115abdd9452f37037e7cc1f0e5b205e00317142a1d1d31d84c5729e6fba3cd46", |
| 67 | + checksum: "a44e9498311c116f0cb0c404c1daaa8e1b3a4d759f0d93c5fee69824a86dfe37", |
| 68 68 | filename: "appsignal-x86_64-freebsd-all-static.tar.gz" |
| 69 69 | }, |
| 70 70 | } |
| @@ -1,49 +1,8 @@ | |
| 1 | - {<<"links">>, |
| 2 | - [{<<"Changelog">>, |
| 3 | - <<"https://github.com/appsignal/appsignal-elixir/blob/main/CHANGELOG.md">>}, |
| 4 | - {<<"GitHub">>,<<"https://github.com/appsignal/appsignal-elixir">>}]}. |
| 5 | - {<<"name">>,<<"appsignal">>}. |
| 6 | - {<<"version">>,<<"2.15.10">>}. |
| 1 | + {<<"app">>,<<"appsignal">>}. |
| 2 | + {<<"build_tools">>,[<<"mix">>,<<"make">>]}. |
| 7 3 | {<<"description">>, |
| 8 4 | <<"Collects error and performance data from your Elixir applications and sends it to AppSignal">>}. |
| 9 5 | {<<"elixir">>,<<"~> 1.9">>}. |
| 10 | - {<<"app">>,<<"appsignal">>}. |
| 11 | - {<<"requirements">>, |
| 12 | - [[{<<"name">>,<<"castore">>}, |
| 13 | - {<<"app">>,<<"castore">>}, |
| 14 | - {<<"optional">>,false}, |
| 15 | - {<<"requirement">>,<<"~> 1.0">>}, |
| 16 | - {<<"repository">>,<<"hexpm">>}], |
| 17 | - [{<<"name">>,<<"certifi">>}, |
| 18 | - {<<"app">>,<<"certifi">>}, |
| 19 | - {<<"optional">>,false}, |
| 20 | - {<<"requirement">>,<<"~> 2.14">>}, |
| 21 | - {<<"repository">>,<<"hexpm">>}], |
| 22 | - [{<<"name">>,<<"decimal">>}, |
| 23 | - {<<"app">>,<<"decimal">>}, |
| 24 | - {<<"optional">>,false}, |
| 25 | - {<<"requirement">>,<<"~> 2.0">>}, |
| 26 | - {<<"repository">>,<<"hexpm">>}], |
| 27 | - [{<<"name">>,<<"finch">>}, |
| 28 | - {<<"app">>,<<"finch">>}, |
| 29 | - {<<"optional">>,false}, |
| 30 | - {<<"requirement">>,<<"~> 0.19">>}, |
| 31 | - {<<"repository">>,<<"hexpm">>}], |
| 32 | - [{<<"name">>,<<"jason">>}, |
| 33 | - {<<"app">>,<<"jason">>}, |
| 34 | - {<<"optional">>,false}, |
| 35 | - {<<"requirement">>,<<"~> 1.0">>}, |
| 36 | - {<<"repository">>,<<"hexpm">>}], |
| 37 | - [{<<"name">>,<<"decorator">>}, |
| 38 | - {<<"app">>,<<"decorator">>}, |
| 39 | - {<<"optional">>,false}, |
| 40 | - {<<"requirement">>,<<"~> 1.2.3 or ~> 1.3">>}, |
| 41 | - {<<"repository">>,<<"hexpm">>}], |
| 42 | - [{<<"name">>,<<"telemetry">>}, |
| 43 | - {<<"app">>,<<"telemetry">>}, |
| 44 | - {<<"optional">>,false}, |
| 45 | - {<<"requirement">>,<<"~> 0.4 or ~> 1.0">>}, |
| 46 | - {<<"repository">>,<<"hexpm">>}]]}. |
| 47 6 | {<<"files">>, |
| 48 7 | [<<"lib">>,<<"lib/appsignal.ex">>,<<"lib/appsignal">>, |
| 49 8 | <<"lib/appsignal/transaction.ex">>, |
| @@ -93,4 +52,45 @@ | |
| 93 52 | <<"CODE_OF_CONDUCT.md">>,<<"README.md">>,<<"SUPPORT.md">>,<<"LICENSE">>, |
| 94 53 | <<"Makefile">>,<<"agent.exs">>,<<"priv/cacert.pem">>]}. |
| 95 54 | {<<"licenses">>,[<<"MIT">>]}. |
| 96 | - {<<"build_tools">>,[<<"mix">>,<<"make">>]}. |
| 55 | + {<<"links">>, |
| 56 | + [{<<"Changelog">>, |
| 57 | + <<"https://github.com/appsignal/appsignal-elixir/blob/main/CHANGELOG.md">>}, |
| 58 | + {<<"GitHub">>,<<"https://github.com/appsignal/appsignal-elixir">>}]}. |
| 59 | + {<<"name">>,<<"appsignal">>}. |
| 60 | + {<<"requirements">>, |
| 61 | + [[{<<"app">>,<<"castore">>}, |
| 62 | + {<<"name">>,<<"castore">>}, |
| 63 | + {<<"optional">>,false}, |
| 64 | + {<<"repository">>,<<"hexpm">>}, |
| 65 | + {<<"requirement">>,<<"~> 1.0">>}], |
| 66 | + [{<<"app">>,<<"certifi">>}, |
| 67 | + {<<"name">>,<<"certifi">>}, |
| 68 | + {<<"optional">>,false}, |
| 69 | + {<<"repository">>,<<"hexpm">>}, |
| 70 | + {<<"requirement">>,<<"~> 2.14">>}], |
| 71 | + [{<<"app">>,<<"decimal">>}, |
| 72 | + {<<"name">>,<<"decimal">>}, |
| 73 | + {<<"optional">>,false}, |
| 74 | + {<<"repository">>,<<"hexpm">>}, |
| 75 | + {<<"requirement">>,<<"~> 2.0">>}], |
| 76 | + [{<<"app">>,<<"finch">>}, |
| 77 | + {<<"name">>,<<"finch">>}, |
| 78 | + {<<"optional">>,false}, |
| 79 | + {<<"repository">>,<<"hexpm">>}, |
| 80 | + {<<"requirement">>,<<"~> 0.19">>}], |
| 81 | + [{<<"app">>,<<"jason">>}, |
| 82 | + {<<"name">>,<<"jason">>}, |
| 83 | + {<<"optional">>,false}, |
| 84 | + {<<"repository">>,<<"hexpm">>}, |
| 85 | + {<<"requirement">>,<<"~> 1.0">>}], |
| 86 | + [{<<"app">>,<<"decorator">>}, |
| 87 | + {<<"name">>,<<"decorator">>}, |
| 88 | + {<<"optional">>,false}, |
| 89 | + {<<"repository">>,<<"hexpm">>}, |
| 90 | + {<<"requirement">>,<<"~> 1.2.3 or ~> 1.3">>}], |
| 91 | + [{<<"app">>,<<"telemetry">>}, |
| 92 | + {<<"name">>,<<"telemetry">>}, |
| 93 | + {<<"optional">>,false}, |
| 94 | + {<<"repository">>,<<"hexpm">>}, |
| 95 | + {<<"requirement">>,<<"~> 0.4 or ~> 1.0">>}]]}. |
| 96 | + {<<"version">>,<<"2.15.11">>}. |
| @@ -4,7 +4,7 @@ defmodule Appsignal.Logger do | |
| 4 4 | @type log_level :: |
| 5 5 | :debug | :info | :notice | :warning | :error | :critical | :alert | :emergency |
| 6 6 | |
| 7 | - @type format :: :json | :logfmt | :plaintext |
| 7 | + @type format :: :json | :logfmt | :plaintext | :autodetect |
| 8 8 | |
| 9 9 | @spec debug(String.t(), String.t(), %{} | format()) :: :ok |
| 10 10 | def debug(group, message, metadata_or_format \\ %{}) |
| @@ -95,7 +95,7 @@ defmodule Appsignal.Logger do | |
| 95 95 | end |
| 96 96 | |
| 97 97 | @spec log(log_level(), String.t(), String.t(), %{}, format()) :: :ok |
| 98 | - def log(log_level, group, message, metadata, format \\ :plaintext) do |
| 98 | + def log(log_level, group, message, metadata, format \\ :autodetect) do |
| 99 99 | encoded_metadata = Appsignal.Utils.DataEncoder.encode(metadata) |
| 100 100 | |
| 101 101 | @nif.log(group, severity(log_level), format(format), message, encoded_metadata) |
| @@ -112,8 +112,9 @@ defmodule Appsignal.Logger do | |
| 112 112 | defp severity(:emergency), do: 9 |
| 113 113 | defp severity(_), do: 3 |
| 114 114 | |
| 115 | + defp format(:autodetect), do: 3 |
| 115 116 | defp format(:json), do: 2 |
| 116 117 | defp format(:logfmt), do: 1 |
| 117 118 | defp format(:plaintext), do: 0 |
| 118 | - defp format(_), do: 0 |
| 119 | + defp format(_), do: 3 |
| 119 120 | end |
| @@ -21,7 +21,7 @@ defmodule Appsignal.Logger.Handler do | |
| 21 21 | ) |
| 22 22 | end |
| 23 23 | |
| 24 | - def add(group, format \\ :plaintext) do |
| 24 | + def add(group, format \\ :autodetect) do |
| 25 25 | :logger.add_handler(:appsignal_log, __MODULE__, %{ |
| 26 26 | config: %{ |
| 27 27 | group: group, |
Loading more files…