Skip to content

Commit d53675e

Browse files
authored
Merge 03a20dd into 2bfacef
2 parents 2bfacef + 03a20dd commit d53675e

File tree

67 files changed

+5268
-29
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

67 files changed

+5268
-29
lines changed

buildSrc/src/main/java/Config.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ object Config {
7878
val SENTRY_OKHTTP_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.okhttp"
7979
val SENTRY_REACTOR_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.reactor"
8080
val SENTRY_KOTLIN_EXTENSIONS_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.kotlin-extensions"
81+
val SENTRY_ASYNC_PROFILER_SDK_NAME = "$SENTRY_JAVA_SDK_NAME.async-profiler"
8182
val group = "io.sentry"
8283
val description = "SDK for sentry.io"
8384
val versionNameProp = "versionName"

sentry-android-core/src/main/java/io/sentry/android/core/AndroidContinuousProfiler.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -300,7 +300,8 @@ private void stop(final boolean restartProfiler) {
300300
chunkId,
301301
endData.measurementsMap,
302302
endData.traceFile,
303-
startProfileChunkTimestamp));
303+
startProfileChunkTimestamp,
304+
"android"));
304305
}
305306
}
306307

Lines changed: 326 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,326 @@
1+
public final class io/sentry/asyncprofiler/BuildConfig {
2+
public static final field SENTRY_ASYNC_PROFILER_SDK_NAME Ljava/lang/String;
3+
public static final field VERSION_NAME Ljava/lang/String;
4+
}
5+
6+
public final class io/sentry/asyncprofiler/convert/JfrAsyncProfilerToSentryProfileConverter : io/sentry/asyncprofiler/vendor/asyncprofiler/convert/JfrConverter {
7+
public fun <init> (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/JfrReader;Lio/sentry/asyncprofiler/vendor/asyncprofiler/convert/Arguments;)V
8+
public static fun convertFromFileStatic (Ljava/nio/file/Path;)Lio/sentry/protocol/profiling/SentryProfile;
9+
}
10+
11+
public final class io/sentry/asyncprofiler/profiling/JavaContinuousProfiler : io/sentry/IContinuousProfiler, io/sentry/transport/RateLimiter$IRateLimitObserver {
12+
public fun <init> (Lio/sentry/ILogger;Ljava/lang/String;ILio/sentry/ISentryExecutorService;)V
13+
public fun close (Z)V
14+
public fun getProfilerId ()Lio/sentry/protocol/SentryId;
15+
public fun getRootSpanCounter ()I
16+
public fun isRunning ()Z
17+
public fun onRateLimitChanged (Lio/sentry/transport/RateLimiter;)V
18+
public fun reevaluateSampling ()V
19+
public fun startProfiler (Lio/sentry/ProfileLifecycle;Lio/sentry/TracesSampler;)V
20+
public fun stopProfiler (Lio/sentry/ProfileLifecycle;)V
21+
}
22+
23+
public final class io/sentry/asyncprofiler/provider/AsyncProfilerContinuousProfilerProvider : io/sentry/profiling/JavaContinuousProfilerProvider {
24+
public fun <init> ()V
25+
public fun getContinuousProfiler (Lio/sentry/ILogger;Ljava/lang/String;ILio/sentry/ISentryExecutorService;)Lio/sentry/IContinuousProfiler;
26+
}
27+
28+
public final class io/sentry/asyncprofiler/provider/AsyncProfilerProfileConverterProvider : io/sentry/profiling/JavaProfileConverterProvider {
29+
public fun <init> ()V
30+
public fun getProfileConverter ()Lio/sentry/IProfileConverter;
31+
}
32+
33+
public final class io/sentry/asyncprofiler/provider/AsyncProfilerProfileConverterProvider$AsyncProfilerProfileConverter : io/sentry/IProfileConverter {
34+
public fun <init> ()V
35+
public fun convertFromFile (Ljava/nio/file/Path;)Lio/sentry/protocol/profiling/SentryProfile;
36+
}
37+
38+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/convert/Arguments {
39+
public field alloc Z
40+
public field bci Z
41+
public field classify Z
42+
public field cpu Z
43+
public field dot Z
44+
public field exclude Ljava/util/regex/Pattern;
45+
public final field files Ljava/util/List;
46+
public field from J
47+
public field grain D
48+
public field help Z
49+
public field highlight Ljava/lang/String;
50+
public field include Ljava/util/regex/Pattern;
51+
public field inverted Z
52+
public field leak Z
53+
public field lines Z
54+
public field live Z
55+
public field lock Z
56+
public field minwidth D
57+
public field nativemem Z
58+
public field norm Z
59+
public field output Ljava/lang/String;
60+
public field reverse Z
61+
public field simple Z
62+
public field skip I
63+
public field state Ljava/lang/String;
64+
public field threads Z
65+
public field title Ljava/lang/String;
66+
public field to J
67+
public field total Z
68+
public field wall Z
69+
public fun <init> ([Ljava/lang/String;)V
70+
}
71+
72+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/convert/Frame : java/util/HashMap {
73+
public static final field TYPE_C1_COMPILED B
74+
public static final field TYPE_CPP B
75+
public static final field TYPE_INLINED B
76+
public static final field TYPE_INTERPRETED B
77+
public static final field TYPE_JIT_COMPILED B
78+
public static final field TYPE_KERNEL B
79+
public static final field TYPE_NATIVE B
80+
}
81+
82+
public abstract class io/sentry/asyncprofiler/vendor/asyncprofiler/convert/JfrConverter {
83+
protected final field args Lio/sentry/asyncprofiler/vendor/asyncprofiler/convert/Arguments;
84+
protected final field collector Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector;
85+
protected final field jfr Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/JfrReader;
86+
protected field methodNames Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary;
87+
public fun <init> (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/JfrReader;Lio/sentry/asyncprofiler/vendor/asyncprofiler/convert/Arguments;)V
88+
protected fun collectEvents ()V
89+
public fun convert ()V
90+
protected fun convertChunk ()V
91+
protected fun createCollector (Lio/sentry/asyncprofiler/vendor/asyncprofiler/convert/Arguments;)Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector;
92+
public synthetic fun getCategory (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/StackTrace;)Lio/sentry/asyncprofiler/vendor/asyncprofiler/convert/Classifier$Category;
93+
public fun getClassName (J)Ljava/lang/String;
94+
public fun getMethodName (JB)Ljava/lang/String;
95+
public fun getPlainThreadName (I)Ljava/lang/String;
96+
public fun getStackTraceElement (JBI)Ljava/lang/StackTraceElement;
97+
public fun getThreadName (I)Ljava/lang/String;
98+
protected fun getThreadStates (Z)Ljava/util/BitSet;
99+
protected fun isNativeFrame (B)Z
100+
protected fun toThreadState (Ljava/lang/String;)I
101+
protected fun toTicks (J)J
102+
}
103+
104+
protected abstract class io/sentry/asyncprofiler/vendor/asyncprofiler/convert/JfrConverter$AggregatedEventVisitor : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector$Visitor {
105+
protected fun <init> (Lio/sentry/asyncprofiler/vendor/asyncprofiler/convert/JfrConverter;)V
106+
protected abstract fun visit (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;J)V
107+
public final fun visit (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;JJ)V
108+
}
109+
110+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/ClassRef {
111+
public final field name J
112+
public fun <init> (J)V
113+
}
114+
115+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary {
116+
public fun <init> ()V
117+
public fun <init> (I)V
118+
public fun clear ()V
119+
public fun forEach (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary$Visitor;)V
120+
public fun get (J)Ljava/lang/Object;
121+
public fun preallocate (I)I
122+
public fun put (JLjava/lang/Object;)V
123+
public fun size ()I
124+
}
125+
126+
public abstract interface class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary$Visitor {
127+
public abstract fun visit (JLjava/lang/Object;)V
128+
}
129+
130+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/DictionaryInt {
131+
public fun <init> ()V
132+
public fun <init> (I)V
133+
public fun clear ()V
134+
public fun forEach (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/DictionaryInt$Visitor;)V
135+
public fun get (J)I
136+
public fun get (JI)I
137+
public fun preallocate (I)I
138+
public fun put (JI)V
139+
}
140+
141+
public abstract interface class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/DictionaryInt$Visitor {
142+
public abstract fun visit (JI)V
143+
}
144+
145+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/JfrClass {
146+
public fun field (Ljava/lang/String;)Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/JfrField;
147+
}
148+
149+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/JfrField {
150+
}
151+
152+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/JfrReader : java/io/Closeable {
153+
public field chunkEndNanos J
154+
public field chunkStartNanos J
155+
public field chunkStartTicks J
156+
public final field classes Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary;
157+
public field endNanos J
158+
public final field enums Ljava/util/Map;
159+
public final field javaThreads Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary;
160+
public final field methods Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary;
161+
public final field settings Ljava/util/Map;
162+
public final field stackTraces Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary;
163+
public field startNanos J
164+
public field startTicks J
165+
public field stopAtNewChunk Z
166+
public final field strings Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary;
167+
public final field symbols Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary;
168+
public final field threads Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary;
169+
public field ticksPerSec J
170+
public final field types Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/Dictionary;
171+
public final field typesByName Ljava/util/Map;
172+
public fun <init> (Ljava/lang/String;)V
173+
public fun <init> (Ljava/nio/ByteBuffer;)V
174+
public fun close ()V
175+
public fun durationNanos ()J
176+
public fun eof ()Z
177+
public fun getBytes ()[B
178+
public fun getDouble ()D
179+
public fun getEnumKey (Ljava/lang/String;Ljava/lang/String;)I
180+
public fun getEnumValue (Ljava/lang/String;I)Ljava/lang/String;
181+
public fun getFloat ()F
182+
public fun getString ()Ljava/lang/String;
183+
public fun getVarint ()I
184+
public fun getVarlong ()J
185+
public fun hasMoreChunks ()Z
186+
public fun incomplete ()Z
187+
public fun readAllEvents ()Ljava/util/List;
188+
public fun readAllEvents (Ljava/lang/Class;)Ljava/util/List;
189+
public fun readEvent ()Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;
190+
public fun readEvent (Ljava/lang/Class;)Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;
191+
public fun registerEvent (Ljava/lang/String;Ljava/lang/Class;)V
192+
}
193+
194+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/MethodRef {
195+
public final field cls J
196+
public final field name J
197+
public final field sig J
198+
public fun <init> (JJJ)V
199+
}
200+
201+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/StackTrace {
202+
public final field locations [I
203+
public final field methods [J
204+
public final field types [B
205+
public fun <init> ([J[B[I)V
206+
}
207+
208+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/AllocationSample : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event {
209+
public final field allocationSize J
210+
public final field classId I
211+
public final field tlabSize J
212+
public fun <init> (JIIIJJ)V
213+
public fun classId ()J
214+
public fun hashCode ()I
215+
public fun sameGroup (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;)Z
216+
public fun value ()J
217+
}
218+
219+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/CPULoad : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event {
220+
public final field jvmSystem F
221+
public final field jvmUser F
222+
public final field machineTotal F
223+
public fun <init> (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/JfrReader;)V
224+
}
225+
226+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/ContendedLock : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event {
227+
public final field classId I
228+
public final field duration J
229+
public fun <init> (JIIJI)V
230+
public fun classId ()J
231+
public fun hashCode ()I
232+
public fun sameGroup (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;)Z
233+
public fun value ()J
234+
}
235+
236+
public abstract class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event : java/lang/Comparable {
237+
public final field stackTraceId I
238+
public final field tid I
239+
public final field time J
240+
protected fun <init> (JII)V
241+
public fun classId ()J
242+
public fun compareTo (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;)I
243+
public synthetic fun compareTo (Ljava/lang/Object;)I
244+
public fun hashCode ()I
245+
public fun sameGroup (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;)Z
246+
public fun samples ()J
247+
public fun toString ()Ljava/lang/String;
248+
public fun value ()J
249+
}
250+
251+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventAggregator : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector {
252+
public fun <init> (ZD)V
253+
public fun afterChunk ()V
254+
public fun beforeChunk ()V
255+
public fun coarsen (D)V
256+
public fun collect (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;)V
257+
public fun collect (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;JJ)V
258+
public fun finish ()Z
259+
public fun forEach (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector$Visitor;)V
260+
public fun size ()I
261+
}
262+
263+
public abstract interface class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector {
264+
public abstract fun afterChunk ()V
265+
public abstract fun beforeChunk ()V
266+
public abstract fun collect (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;)V
267+
public abstract fun finish ()Z
268+
public abstract fun forEach (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector$Visitor;)V
269+
}
270+
271+
public abstract interface class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector$Visitor {
272+
public abstract fun visit (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;JJ)V
273+
}
274+
275+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/ExecutionSample : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event {
276+
public final field samples I
277+
public final field threadState I
278+
public fun <init> (JIIII)V
279+
public fun samples ()J
280+
public fun value ()J
281+
}
282+
283+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/GCHeapSummary : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event {
284+
public final field afterGC Z
285+
public final field committed J
286+
public final field gcId I
287+
public final field reserved J
288+
public final field used J
289+
public fun <init> (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/JfrReader;)V
290+
}
291+
292+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/LiveObject : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event {
293+
public final field allocationSize J
294+
public final field allocationTime J
295+
public final field classId I
296+
public fun <init> (JIIIJJ)V
297+
public fun classId ()J
298+
public fun hashCode ()I
299+
public fun sameGroup (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;)Z
300+
public fun value ()J
301+
}
302+
303+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/MallocEvent : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event {
304+
public final field address J
305+
public final field size J
306+
public fun <init> (JIIJJ)V
307+
public fun value ()J
308+
}
309+
310+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/MallocLeakAggregator : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector {
311+
public fun <init> (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector;)V
312+
public fun afterChunk ()V
313+
public fun beforeChunk ()V
314+
public fun collect (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event;)V
315+
public fun finish ()Z
316+
public fun forEach (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/EventCollector$Visitor;)V
317+
}
318+
319+
public final class io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/ObjectCount : io/sentry/asyncprofiler/vendor/asyncprofiler/jfr/event/Event {
320+
public final field classId I
321+
public final field count J
322+
public final field gcId I
323+
public final field totalSize J
324+
public fun <init> (Lio/sentry/asyncprofiler/vendor/asyncprofiler/jfr/JfrReader;)V
325+
}
326+

0 commit comments

Comments
 (0)