Skip to content

Commit

Permalink
Update Muzzle docs to describe VirtualField dependency (open-telemetr…
Browse files Browse the repository at this point in the history
  • Loading branch information
lesterhaynes authored and Abhishekkr3003 committed Nov 7, 2023
1 parent 9f6604d commit 5dd2538
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 0 deletions.
4 changes: 4 additions & 0 deletions docs/contributing/muzzle.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,10 @@ symbols on the application classpath.

Muzzle will prevent loading an instrumentation if it detects any mismatch or conflict.

Muzzle's dependency graph and class injection are encountered especially during the writing of
[`instrumentation modules`](writing-instrumentation-module.md). This functionality is required if
the packaged instrumentation utilizes `VirtualField`.

## How it works

Muzzle has two phases:
Expand Down
3 changes: 3 additions & 0 deletions docs/contributing/writing-instrumentation-module.md
Original file line number Diff line number Diff line change
Expand Up @@ -341,6 +341,9 @@ limited: the `VirtualField#get()` method must receive class references as its pa
work with variables, method params, etc. Both the owner class and the field class must be known at
compile time for it to work.

Use of `VirtualField` requires the `muzzle-generation` gradle plugin. Failing to use the plugin will result in
ClassNotFoundException when trying to access the field.

### Why we don't use ByteBuddy @Advice.Origin Method

Instead of
Expand Down

0 comments on commit 5dd2538

Please sign in to comment.