Skip to content

Commit d051f07

Browse files
authored
Breadcrumbs on by default (#269)
1 parent b78b461 commit d051f07

File tree

5 files changed

+38
-62
lines changed

5 files changed

+38
-62
lines changed

CHANGELOG.md

+2
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ CHANGELOG](http://keepachangelog.com/) for how to update this file. This project
55
adheres to [Semantic Versioning](http://semver.org/).
66

77
## [Unreleased]
8+
### Changed
9+
- Breadcrumbs on by default
810

911
## [v0.13.1] - 2020-02-06
1012
### Fixed

README.md

-14
Original file line numberDiff line numberDiff line change
@@ -127,20 +127,6 @@ transfer automatically. Since a typical system might have many processes, it
127127
is advised that you be conservative when storing breadcrumbs as each
128128
breadcrumb consumes memory.
129129

130-
### Enabling Breadcrumbs
131-
132-
As of version `0.13.0`, Breadcrumbs are _available_ yet _disabled_. You must
133-
explicitly enable them if you want breadcrumbs to be reported. We plan on
134-
enabling this by default in a future release.
135-
136-
Toggle `breadcrumbs_enabled` in the config to start sending Breadcrumbs with
137-
notices:
138-
139-
```elixir
140-
config :honeybadger,
141-
breadcrumbs_enabled: true
142-
```
143-
144130
### Automatic Breadcrumbs
145131

146132
We leverage the `telemetry` library to automatically create breadcrumbs from

lib/honeybadger.ex

+1-7
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ defmodule Honeybadger do
1616
environment_name: :prod,
1717
app: :my_app_name,
1818
exclude_envs: [:dev, :test],
19-
breadcrumbs_enabled: false,
19+
breadcrumbs_enabled: true,
2020
ecto_repos: [MyAppName.Ecto.Repo],
2121
hostname: "myserver.domain.com",
2222
origin: "https://api.honeybadger.io",
@@ -136,12 +136,6 @@ defmodule Honeybadger do
136136
is advised that you be conservative when storing breadcrumbs as each
137137
breadcrumb consumes memory.
138138
139-
Ensure that you enable breadcrumbs in the config (as it is disabled by
140-
default):
141-
142-
config :honeybadger,
143-
breadcrumbs_enabled: true
144-
145139
See `Honeybadger.add_breadcrumb` for info on how to add custom breadcrumbs.
146140
147141
### Automatic Breadcrumbs

mix.exs

+1-1
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ defmodule Honeybadger.Mixfile do
4242
env: [
4343
api_key: {:system, "HONEYBADGER_API_KEY"},
4444
app: nil,
45-
breadcrumbs_enabled: false,
45+
breadcrumbs_enabled: true,
4646
ecto_repos: [],
4747
environment_name: Mix.env(),
4848
exclude_envs: [:dev, :test],

test/honeybadger/breadcrumbs/collector_test.exs

+34-40
Original file line numberDiff line numberDiff line change
@@ -4,64 +4,58 @@ defmodule Honeybadger.Breadcrumbs.CollectorTest do
44
alias Honeybadger.Breadcrumbs.{Collector, Breadcrumb}
55

66
test "stores and outputs data" do
7-
with_config([breadcrumbs_enabled: true], fn ->
8-
bc1 = Breadcrumb.new("test1", [])
9-
bc2 = Breadcrumb.new("test2", [])
10-
Collector.add(bc1)
11-
Collector.add(bc2)
7+
bc1 = Breadcrumb.new("test1", [])
8+
bc2 = Breadcrumb.new("test2", [])
9+
Collector.add(bc1)
10+
Collector.add(bc2)
1211

13-
assert Collector.output() == %{
14-
enabled: true,
15-
trail: [bc1, bc2]
16-
}
17-
end)
12+
assert Collector.output() == %{
13+
enabled: true,
14+
trail: [bc1, bc2]
15+
}
1816
end
1917

2018
test "runs metadata through sanitizer" do
21-
with_config([breadcrumbs_enabled: true], fn ->
22-
bc1 =
23-
Breadcrumb.new("test1",
24-
metadata: %{
25-
key1: %{key2: 12}
26-
}
27-
)
19+
bc1 =
20+
Breadcrumb.new("test1",
21+
metadata: %{
22+
key1: %{key2: 12}
23+
}
24+
)
2825

29-
Collector.add(bc1)
26+
Collector.add(bc1)
3027

31-
assert List.first(Collector.output()[:trail]).metadata == %{
32-
key1: "[DEPTH]"
33-
}
34-
end)
28+
assert List.first(Collector.output()[:trail]).metadata == %{
29+
key1: "[DEPTH]"
30+
}
3531
end
3632

3733
test "ignores when breadcrumbs are disabled" do
38-
Collector.add("test1")
39-
Collector.add("test2")
34+
with_config([breadcrumbs_enabled: false], fn ->
35+
Collector.add("test1")
36+
Collector.add("test2")
4037

41-
assert Collector.output() == %{
42-
enabled: false,
43-
trail: []
44-
}
38+
assert Collector.output() == %{
39+
enabled: false,
40+
trail: []
41+
}
42+
end)
4543
end
4644

4745
test "clearing data" do
48-
with_config([breadcrumbs_enabled: true], fn ->
49-
Collector.add(Breadcrumb.new("test1", []))
50-
Collector.clear()
46+
Collector.add(Breadcrumb.new("test1", []))
47+
Collector.clear()
5148

52-
assert Collector.output()[:trail] == []
53-
end)
49+
assert Collector.output()[:trail] == []
5450
end
5551

5652
test "allows put operation on supplied breadcrumb buffer" do
57-
with_config([breadcrumbs_enabled: true], fn ->
58-
bc = Breadcrumb.new("test1", [])
53+
bc = Breadcrumb.new("test1", [])
5954

60-
breadcrumbs =
61-
Collector.breadcrumbs()
62-
|> Collector.put(bc)
55+
breadcrumbs =
56+
Collector.breadcrumbs()
57+
|> Collector.put(bc)
6358

64-
assert Collector.output(breadcrumbs)[:trail] == [bc]
65-
end)
59+
assert Collector.output(breadcrumbs)[:trail] == [bc]
6660
end
6761
end

0 commit comments

Comments
 (0)