-
Notifications
You must be signed in to change notification settings - Fork 2
/
dtrace.d.erb
28 lines (23 loc) · 1.28 KB
/
dtrace.d.erb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
typedef uint<%=bitsize_of_value%>_t VALUE;
provider ruby {
probe method__entry(VALUE receiver, char *classname, char *methodname, char *sourcefile, int sourceline);
probe method__return(VALUE receiver, char *classname, char *methodname, char *sourcefile, int sourceline);
probe raise(VALUE exception, char *classname, char *sourcefile, int sourceline);
probe rescue(VALUE exception, char *classname, char *sourcefile, int sourceline);
probe line(char* sourcefile, int sourceline);
/* gc probes */
probe gc__start();
probe gc__end();
/* threads and fibers */
probe thread__init(VALUE thread, char *sourcefile, int sourceline);
probe thread__term(VALUE thread, char *sourcefile, int sourceline);
probe thread__leave(VALUE thread, char *sourcefile, int sourceline);
/* Some initial memory type probes */
probe object__create(VALUE obj, char *sourcefile, int sourceline);
probe object__free(VALUE obj);
};
#pragma D attributes Evolving/Evolving/Common provider ruby provider
#pragma D attributes Private/Private/Unknown provider ruby module
#pragma D attributes Private/Private/Unknown provider ruby function
#pragma D attributes Evolving/Evolving/Unknown provider ruby name
#pragma D attributes Evolving/Evolving/Unknown provider ruby args