Skip to content

Commit 007793b

Browse files
committed
fixed problem with non-ending segments and added support for Yield
1 parent a15a6ef commit 007793b

File tree

1 file changed

+10
-3
lines changed

1 file changed

+10
-3
lines changed

README.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,13 @@ Provides instrumentation for Kotlin Coroutines. In particular it will trace the
2121

2222
## Supported Versions
2323

24+
Kotlin-Coroutines-Suspends - provides tracing of Kotlin Coroutine suspend functions across all versions.
2425
Kotlin-Coroutines-1.0 - all 1.0.x versions.
2526
Kotlin-Coroutines-1.1 - all 1.1.x versions.
2627
Kotlin-Coroutines-1.2 - all 1.2.x and 1.3.x versions.
2728
Kotlin-Coroutines-1.4 - all 1.4.x versions.
2829
Kotlin-Coroutines-1.5 - all 1.5.x and 1.6.x versions.
29-
Kotlin-Coroutines-1.7 - all 1.7.x versions.
30+
Kotlin-Coroutines-1.7 - all 1.7.x and later versions.
3031

3132
## Installation
3233
To use this instrumentation.
@@ -45,12 +46,18 @@ You can also check any captured transactions for Metrics that start with 'Custom
4546

4647
After deployment of the instrumentation jars, you should be able to see the invocation of a coroutine from start to finish across any threads that it executes on.
4748

49+
### Couroutine Name
50+
For methods related to a coroutine (e.g. start, launch, runBlocking, etc.) it will use the CoroutineName if it is defined in the CoroutineContext or the simple name of the Coroutine class.
51+
52+
### Continuation String
53+
Many of the metrics created by this instrumentation will use the continuation string which is the result of calling the toString method on a Continuation object. Typically this is either Continuation at ${getStackTraceElement() or the Java class name. In the case of subclasses of AbstractCoroutine it will be the coroutine name.
54+
4855
The following things are captured as part of the instrumentation
4956
| Item | Metric Name format | Example |
5057
| ---- | ---- | ---- |
5158
| Suspend Functions | Custom/SuspendFunction/*ContinuationString* | Custom/SuspendFunction/Continuation at com.nrlabs.WithContextKt.main$doTaskOne(WithContext.kt:12) |
52-
| Dispatched Tasks | Custom/DispatchedTask//*ContinuationString* | Custom/DispatchedTask/DispatchedContinuation[Dispatchers.Default, Continuation at kotlin.coroutines.intrinsics.IntrinsicsKt__IntrinsicsJvmKt$createCoroutineUnintercepted... |
53-
| Continuation but not Suspend | Custom/ContinuationWrapper/*ContinuationString* | |
59+
| Dispatched Tasks | Custom/DispatchedTask//*ContinuationString* | Custom/DispatchedTask/DispatchedContinuation[java.util.concurrent.Executors$FinalizableDelegatedExecutorService |
60+
| Continuation but not Suspend | Custom/ContinuationWrapper/*ContinuationString* | Custom/ContinuationWrapper/resumeWith/createCoroutineFromSuspendFunction |
5461

5562
## Usage
5663

0 commit comments

Comments
 (0)