Skip to content

Releases: DataDog/orchestrion

v0.7.0-dev.2

25 Apr 12:54
5b93692
Compare
Choose a tag to compare
v0.7.0-dev.2 Pre-release
Pre-release

What's new

⚠️ Breaking Changes

This release of orchestrion is a major re-design: in order to improve the coverage achievable with Orchestrion, it moved from being a coding-time tool (where check-in instrumented code) to a build-time tool, moving the instrumentation code completely out of the way.

Migration from versions up to 0.6.0:

  1. in order to avoid doubly-instrumented code, we strongly advise users of Orchestrion until version 0.6.0 to run orchestrion -rm . to remove any existing orchestrion-inserted code from their codebase before upgrading to Orchestrion 0.7.0 and greater.
  2. once done, follow the installation instructions in the README file.

Highlights

Orchestrion now runs as a Go toolchain -toolexec tool, allowing it to instrument all Go code included in the final binary, including any and all transitive dependencies as well as the standard library; while only changing a single build command. This allows maximization of the profiling and application security coverage, without requiring any significant developer effort.

The instrumentation code remains out of the way so that developers can focus on building their product without having to worry about – or be distracted by – verbose instrumentation code.

Known issues

  • Constructor instrumentation may cause compilation errors when the instrumented function returns a different type (e.g: mux.NewRouter) #86

Bug fixes

  • Dot-imports result in instrumentation failure (#50)
  • Cannot decorate multiple packages with the same apparent package name (#56)

Full Changelog: v0.6.0...v0.7.0-dev.2

v0.7.0-dev.1

23 Apr 14:15
062012c
Compare
Choose a tag to compare
v0.7.0-dev.1 Pre-release
Pre-release

What's new

⚠️ Breaking Changes

This release of orchestrion is a major re-design: in order to improve the coverage achievable with Orchestrion, it moved from being a coding-time tool (where check-in instrumented code) to a build-time tool, moving the instrumentation code completely out of the way.

Migration from versions up to 0.6.0:

  1. in order to avoid doubly-instrumented code, we strongly advise users of Orchestrion until version 0.6.0 to run orchestrion -rm . to remove any existing orchestrion-inserted code from their codebase before upgrading to Orchestrion 0.7.0 and greater.
  2. once done, follow the installation instructions in the README file.

Highlights

Orchestrion now runs as a Go toolchain -toolexec tool, allowing it to instrument all Go code included in the final binary, including any and all transitive dependencies as well as the standard library; while only changing a single build command. This allows maximization of the profiling and application security coverage, without requiring any significant developer effort.

The instrumentation code remains out of the way so that developers can focus on building their product without having to worry about – or be distracted by – verbose instrumentation code.

Known issues

  • Constructor instrumentation may cause compilation errors when the instrumented function returns a different type (e.g: mux.NewRouter) #86

Bug fixes

  • Dot-imports result in instrumentation failure (#50)
  • Cannot decorate multiple packages with the same apparent package name (#56)

Full Changelog: v0.6.0...v0.7.0-rc.1

v0.6.0

13 Dec 08:59
f1bfa36
Compare
Choose a tag to compare

What's Changed

  • Add Fiber V2 support for automated tracing by @mlund01 in #55
  • ci: fix ci and make it run on external contribs by @ahmed-mez in #58

New Contributors

Full Changelog: v0.5.0...v0.6.0

v0.5.0

12 Dec 09:38
271429a
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.4.1...v0.5.0

v0.4.1

10 Oct 09:40
14654a0
Compare
Choose a tag to compare

What's Changed

  • internal/version/version.go: release v0.4.0 by @darccio in #47
  • instrument/http: add span.kind & component tags to WrapHandlerFunc by @darccio in #48

Full Changelog: v0.4.0...v0.4.1

v0.4.0

09 Oct 15:33
16f5546
Compare
Choose a tag to compare

What's Changed

  • Update version in version.go by @ahmed-mez in #43
  • all: Add integration testing harness and some tests by @knusbaum in #37
  • cmd: add -v flag to print version by @ahmed-mez in #45
  • instrument: add resource namer to net/http wrappers by @darccio in #46

Full Changelog: v0.3.0...v0.4.0

v0.3.0

15 Sep 15:08
e708aaf
Compare
Choose a tag to compare

What's Changed

  • instrument: support labstack/echo.v4 by @darccio in #32
  • instrument: refactor, format, and organize code by integration by @darccio in #33
  • instrument: support chi.v5 by @ahmed-mez in #34
  • go.mod: bump dd-trace-go to v1.54.0 by @ahmed-mez in #35
  • instrument: support gorilla/mux by @darccio in #36
  • release: add version tag const by @ahmed-mez in #39
  • instrument: add unwrap for HTTP handler assign by @darccio in #38
  • instrument: fix duplicated instrumentation statements on already instrumented frameworks by @darccio in #42
  • typechecker: document 3rd party limitation by @ahmed-mez in #31
  • instrument: support *net/http.Request values for context by @darccio in #41
  • instrument: report orchestrion config to dd-trace-go by @ahmed-mez in #40

New Contributors

Full Changelog: v0.2.0...v0.3.0

v0.2.0

08 Aug 14:12
d1bb658
Compare
Choose a tag to compare

What's Changed

  • instrument: support Gin by @ahmed-mez in #30
  • instrument: clean up some dead code and debug logs by @knusbaum in #29
  • README.md: improve documentation and add examples by @knusbaum in #28

Full Changelog: v0.1.0...v0.2.0

v0.1.0

26 Jun 08:49
aa96421
Compare
Choose a tag to compare

What's Changed

First release of Orchestrion! 🎉

This release provides initial support for:

  • Auto-instrumenting
    • net/http
    • database/sql
    • google.golang.org/grpc
  • Custom span creation via //dd:span
  • Removing instrumentation
  • Ignoring functions and statements via //dd:ignore

New Contributors

Full Changelog: https://github.com/DataDog/orchestrion/commits/v0.1.0