Commit graph

41 commits

Author SHA1 Message Date
Alex Wakefield
3457bf5702
Add OtelPathNames for span names (#89)
* feat: add `OtelPathNames` for span names

If this extension is provided span names will be `<method> <path name>`.
These path names will include parameter names rather than IDs or other elements that would increase the cardinality.

* doc: update changelog

* refactor: update `known_paths` to return error

* refactor: return `anyhow::Error` instead

This is as `reqwest_middleware::Error` is more focused on handling a
request.
2023-04-26 15:28:32 +01:00
Léo Gaspard
fef18b3506
feat: wasm32-unknown-unknown support (#79)
* feat: wasm32-unknown-unknown support

This replaces task-local-extensions with http's extensions, as http was
already in the dependency closure anyway and the other features of
task-local-extensions (that required an incompatible-with-wasm part of
tokio) were not used anyway.

* feat: have ci check that wasm32-unknown-unknown keeps compiling

* revert back to task-local-extensions

* fix ci

* fix random on wasm

* fix ci again

* bump

---------

Co-authored-by: Conrad Ludgate <conrad.ludgate@truelayer.com>
2023-03-09 11:33:13 +00:00
John Vandenberg
a7f9a112ed
Update example in tracing README (#76) 2022-11-23 07:39:54 +00:00
Conrad Ludgate
289bb0452c
bump all versions (#71) 2022-11-15 10:31:34 +00:00
tl-rodrigo-gryzinski
197f19781d
Make http.url field opt-in (#70) 2022-11-10 13:21:07 +00:00
Robert Collins
4fb158f785
Fix indents in Changelog. (#67) 2022-11-07 14:23:43 +00:00
Robert Collins
07d154cadf
Custom otel names (#65)
* Breaking change(macros): require explicit name for tracing middleware

Closes: #52

This is suggested by the Opentelemetry spec, which requires "Therefore,
HTTP client spans SHOULD be using conservative, low cardinality names
formed from the available parameters of an HTTP request, such as "HTTP
{METHOD_NAME}". Instrumentation MUST NOT default to using URI path as
span name, but MAY provide hooks to allow custom logic to override the
default span name.
"

* Permit customisation of otel span names via OtelName
2022-11-07 13:07:23 +00:00
Robert Collins
920cb5ac16
Capture URL as http.url (#64) 2022-11-07 08:45:58 +00:00
Robert Collins
7a09e335aa
Fix main builds (#66)
* Remove unneeded derefs

* Resolve reqwest_otel_span correctly in docs.

Macros always resolve to the crate root.
2022-11-07 08:39:03 +00:00
Robert Collins
ddd7e12104
Make clear examples are just examples (#63) 2022-11-07 06:51:40 +00:00
Kai
0f7c2e15fa
Add missing dep in reqwest-tracing README (#61) 2022-10-05 14:56:46 +01:00
Conrad Ludgate
3c00388cfb
bump reqwest-tracing (#59) 2022-09-29 16:17:12 +01:00
birkmose
dd877924c4
Opentelemetry 0.18 (#58)
* Support for opentelemetry 0.18

* Updated changelog

* Update CI/CD to test 0.18

* Update documentation to use opentelemetry 0.18

* Update to use 0.18 in libs
2022-09-20 16:07:32 +03:00
tl-flavio-barinas
ad18935d1f
bump/use alpha versions (#48) 2022-06-30 16:08:59 +01:00
tl-flavio-barinas
cbe69f61a1 reqwest-tracing: bump to v0.3.0 2022-06-30 14:57:55 +01:00
Alessandro Zanin
13ca870d20
Allows adding properties to the span (#43)
Provides reqwest-tracing with a trait ReqwestOtelSpanBackend, allowing custom fields/behaviour to be defined.

This is a breaking change as the TracingMiddleware signature now requires you to define a ReqwestOtelSpanBackend to provide it with the desired span behaviour.

Co-authored-by: Alessandro Zanin <ale.zanin90@gmail.com>
Co-authored-by: tl-flavio-barinas <flavio.barinas@truelayer.com>
Co-authored-by: Marco Tormento <tl-marco-tormento@users.noreply.github.com>
2022-06-30 14:54:54 +01:00
tl-flavio-barinas
8a6b2ea571
bump reqwest-tracing to v0.2.3 (#46)
* (cargo-release) reqwest-tracing v0.2.3

* sort dependencies

* Fix dependency versions

* Fix reqwest-middleware dependency

Co-authored-by: azanin <ale.zanin90@gmail.com>
2022-06-29 15:06:52 +01:00
James Hinshelwood
762007b524
Update otel.status_code mapping with latest version of spec. (#41)
Co-authored-by: James Hinshelwood <james.hinshelwood@bigpayme.com>
Signed-off-by: James Hinshelwood <jameshinshelwood1@gmail.com>

Co-authored-by: James Hinshelwood <james.hinshelwood@bigpayme.com>
2022-05-17 10:25:58 +01:00
Rodrigo Gryzinski
8f6af94914 bump versions and update changelog for reqwest-tracing 2022-04-21 18:53:32 +01:00
Rodrigo Gryzinski
8458d82eef (cargo-release) version 0.2.2 2022-04-21 18:49:16 +01:00
Rodrigo Gryzinski
e9fd6f80ea (cargo-release) version 0.1.6 2022-04-21 18:49:16 +01:00
Conrad Ludgate
dc44128c7f
fix: context not propagated if request_span is disabled (#39) 2022-04-21 18:39:06 +01:00
Conrad Ludgate
f928a7b2d6
docs: fix readme (#40) 2022-04-21 18:38:15 +01:00
Marcus Griep
643f47ad92
chore: correct OpenTracing -> OpenTelemetry (#34) 2022-03-09 16:23:43 +00:00
tl-rodrigo-gryzinski
5f180155ef
Release reqwest middleware 0.1.5 (#31)
* (cargo-release) reqwest-middleware version 0.1.5
* (cargo-release) reqwest-retry version 0.1.4
* (cargo-release) reqwest-tracing version 0.2.1
* (cargo-release) reqwest-middleware start next development iteration 0.1.6-alpha.0
* (cargo-release) reqwest-retry start next development iteration 0.1.5-alpha.0
* (cargo-release) reqwest-tracing start next development iteration 0.2.2-alpha.0
* Updated CHANGELOGS for 0.1.4 and 0.1.5
2022-02-21 12:50:18 +00:00
Geoffroy Couprie
7b288f582b
update to opentelemetry 0.17 (#29)
* update to opentelemetry 0.17
2022-02-16 17:37:54 +00:00
Luca Palmieri
53b8b066f3 (cargo-release) start next development iteration 0.1.5-alpha.0 2022-01-24 11:26:25 +00:00
Luca Palmieri
d3fe5acf02 (cargo-release) start next development iteration 0.1.4-alpha.0 2021-12-06 16:20:20 +00:00
Luca Palmieri
d3a6900cea
Cut 0.2.0 release of reqwest-tracing. (#19)
* Cut 0.2.0 release of `reqwest-tracing`.

* (cargo-release) version 0.2.0

* (cargo-release) start next development iteration 0.2.1-alpha.0
2021-11-30 16:15:36 +00:00
Geoffroy Couprie
422566972a
update tracing-opentelemetry to 0.16 (#18)
this update requires moving to tracing-subscriber 0.3. It removes chrono
from transitive dependencies, following
https://rustsec.org/advisories/RUSTSEC-2020-0159.html
2021-11-30 16:00:23 +00:00
tl-rodrigo-gryzinski
a3926c9f6f
Release reqwest tracing 0.1.3 (#12)
* chore: version bump reqwest-tracing to 0.1.3
* bump reqwest-tracing to next development version
2021-09-28 22:01:36 +01:00
tl-rodrigo-gryzinski
c05fd77b3f
chore: version bump reqwest-middleware to 0.1.2 (#10) 2021-09-28 19:57:28 +01:00
tl-rodrigo-gryzinski
9c82a35a90
chore: Move to task-local-extensions (#9)
* chore: Move to task-local-extensions
2021-09-28 19:50:23 +01:00
tl-rodrigo-gryzinski
b8645f81eb
Include README in crate doctests and improve documentation (#8)
* chore: Improve docs and include some examples in doctests
2021-09-28 19:26:03 +01:00
Conrad Ludgate
e0b01383d6
Reqwest default features (#7)
* feat: disable default features for reqwest
2021-09-28 11:17:10 +01:00
Rodrigo Gryzinski
9cb81b2f89 Prepare next release iteration 0.1.2 2021-09-15 11:04:03 +01:00
Rodrigo Gryzinski
42608efb03 Prepare release reqwest-tracing-0.1.2 2021-09-15 10:58:03 +01:00
Luca Palmieri
a92e19d638 (cargo-release) start next development iteration 0.1.2-alpha.0 2021-08-30 13:17:31 +02:00
Luca Palmieri
51c2f29185 Prepare 0.1.1 release of reqwest-tracing 2021-08-30 13:15:25 +02:00
Ilmari Vacklin
753b2439fa
Add support for OpenTelemetry 0.16 and tracing-opentelemetry 0.15 (#2)
* add opentelemetry 0.16

* ci: run against otel 0.16

* ci: run jobs against each otel version

* docs: mention opentelemetry_0_16 in README
2021-08-30 13:14:06 +02:00
Rodrigo Gryzinski
7fe55152ec Initial commit 2021-08-13 08:59:58 +01:00