rbtrace 0.3.19 → 0.3.20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/Gemfile.lock +2 -2
- data/ext/rbtrace.c +24 -4
- data/rbtrace.gemspec +1 -1
- metadata +28 -21
- checksums.yaml +0 -7
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
rbtrace (0.3.
|
4
|
+
rbtrace (0.3.19)
|
5
5
|
ffi (>= 1.0.6)
|
6
6
|
msgpack (>= 0.4.3)
|
7
7
|
trollop (>= 1.16.2)
|
@@ -10,7 +10,7 @@ GEM
|
|
10
10
|
remote: https://rubygems.org/
|
11
11
|
specs:
|
12
12
|
ffi (1.0.11)
|
13
|
-
msgpack (0.4.
|
13
|
+
msgpack (0.4.7)
|
14
14
|
trollop (1.16.2)
|
15
15
|
|
16
16
|
PLATFORMS
|
data/ext/rbtrace.c
CHANGED
@@ -619,6 +619,7 @@ rbtracer_detach()
|
|
619
619
|
rbtracer.slowcpu = false;
|
620
620
|
rbtracer.gc = false;
|
621
621
|
rbtracer.devmode = false;
|
622
|
+
rbtracer.num_calls = 0;
|
622
623
|
|
623
624
|
int i;
|
624
625
|
for (i=0; i<MAX_TRACERS; i++) {
|
@@ -1043,7 +1044,20 @@ rbtrace_gc_mark()
|
|
1043
1044
|
}
|
1044
1045
|
}
|
1045
1046
|
|
1046
|
-
static VALUE gc_hook;
|
1047
|
+
static VALUE gc_hook, signal_handler_proc;
|
1048
|
+
|
1049
|
+
static VALUE
|
1050
|
+
signal_handler_wrapper(VALUE arg, VALUE ctx)
|
1051
|
+
{
|
1052
|
+
static int in_signal_handler = 0;
|
1053
|
+
if (in_signal_handler) return;
|
1054
|
+
|
1055
|
+
in_signal_handler++;
|
1056
|
+
sigurg(SIGURG);
|
1057
|
+
in_signal_handler--;
|
1058
|
+
|
1059
|
+
return Qnil;
|
1060
|
+
}
|
1047
1061
|
|
1048
1062
|
void
|
1049
1063
|
Init_rbtrace()
|
@@ -1052,6 +1066,15 @@ Init_rbtrace()
|
|
1052
1066
|
gc_hook = Data_Wrap_Struct(rb_cObject, rbtrace_gc_mark, NULL, NULL);
|
1053
1067
|
rb_global_variable(&gc_hook);
|
1054
1068
|
|
1069
|
+
// catch signal telling us to read from the msgq
|
1070
|
+
#ifdef RUBY_VM
|
1071
|
+
signal_handler_proc = rb_proc_new(signal_handler_wrapper, Qnil);
|
1072
|
+
rb_global_variable(&signal_handler_proc);
|
1073
|
+
rb_funcall(Qnil, rb_intern("trap"), 2, rb_str_new_cstr("URG"), signal_handler_proc);
|
1074
|
+
#else
|
1075
|
+
signal(SIGURG, sigurg);
|
1076
|
+
#endif
|
1077
|
+
|
1055
1078
|
// setup msgpack
|
1056
1079
|
rbtracer.sbuf = msgpack_sbuffer_new();
|
1057
1080
|
rbtracer.msgpacker = msgpack_packer_new(rbtracer.sbuf, msgpack_sbuffer_write);
|
@@ -1059,9 +1082,6 @@ Init_rbtrace()
|
|
1059
1082
|
// zero out tracer
|
1060
1083
|
memset(&rbtracer.list, 0, sizeof(rbtracer.list));
|
1061
1084
|
|
1062
|
-
// catch signal telling us to read from the msgq
|
1063
|
-
signal(SIGURG, sigurg);
|
1064
|
-
|
1065
1085
|
// cleanup the msgq on exit
|
1066
1086
|
atexit(msgq_teardown);
|
1067
1087
|
rb_set_end_proc(ruby_teardown, 0);
|
data/rbtrace.gemspec
CHANGED
metadata
CHANGED
@@ -1,57 +1,64 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rbtrace
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
|
4
|
+
prerelease:
|
5
|
+
version: 0.3.20
|
5
6
|
platform: ruby
|
6
7
|
authors:
|
7
8
|
- Aman Gupta
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date: 2013-
|
12
|
+
date: 2013-03-08 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
|
-
|
15
|
+
type: :runtime
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
16
18
|
requirements:
|
17
|
-
- - '>='
|
19
|
+
- - ! '>='
|
18
20
|
- !ruby/object:Gem::Version
|
19
21
|
version: 1.0.6
|
20
|
-
type: :runtime
|
21
22
|
prerelease: false
|
22
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
|
+
none: false
|
23
25
|
requirements:
|
24
|
-
- - '>='
|
26
|
+
- - ! '>='
|
25
27
|
- !ruby/object:Gem::Version
|
26
28
|
version: 1.0.6
|
29
|
+
name: ffi
|
27
30
|
- !ruby/object:Gem::Dependency
|
28
|
-
|
31
|
+
type: :runtime
|
29
32
|
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
30
34
|
requirements:
|
31
|
-
- - '>='
|
35
|
+
- - ! '>='
|
32
36
|
- !ruby/object:Gem::Version
|
33
37
|
version: 1.16.2
|
34
|
-
type: :runtime
|
35
38
|
prerelease: false
|
36
39
|
version_requirements: !ruby/object:Gem::Requirement
|
40
|
+
none: false
|
37
41
|
requirements:
|
38
|
-
- - '>='
|
42
|
+
- - ! '>='
|
39
43
|
- !ruby/object:Gem::Version
|
40
44
|
version: 1.16.2
|
45
|
+
name: trollop
|
41
46
|
- !ruby/object:Gem::Dependency
|
42
|
-
|
47
|
+
type: :runtime
|
43
48
|
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
44
50
|
requirements:
|
45
|
-
- - '>='
|
51
|
+
- - ! '>='
|
46
52
|
- !ruby/object:Gem::Version
|
47
53
|
version: 0.4.3
|
48
|
-
type: :runtime
|
49
54
|
prerelease: false
|
50
55
|
version_requirements: !ruby/object:Gem::Requirement
|
56
|
+
none: false
|
51
57
|
requirements:
|
52
|
-
- - '>='
|
58
|
+
- - ! '>='
|
53
59
|
- !ruby/object:Gem::Version
|
54
60
|
version: 0.4.3
|
61
|
+
name: msgpack
|
55
62
|
description: rbtrace shows you method calls happening inside another ruby process
|
56
63
|
in real time.
|
57
64
|
email: aman@tmm1.net
|
@@ -82,26 +89,26 @@ files:
|
|
82
89
|
- tracers/unicorn.tracer
|
83
90
|
homepage: http://github.com/tmm1/rbtrace
|
84
91
|
licenses: []
|
85
|
-
metadata: {}
|
86
92
|
post_install_message:
|
87
93
|
rdoc_options: []
|
88
94
|
require_paths:
|
89
95
|
- lib
|
90
96
|
required_ruby_version: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
91
98
|
requirements:
|
92
|
-
- - '>='
|
99
|
+
- - ! '>='
|
93
100
|
- !ruby/object:Gem::Version
|
94
101
|
version: '0'
|
95
102
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
103
|
+
none: false
|
96
104
|
requirements:
|
97
|
-
- - '>='
|
105
|
+
- - ! '>='
|
98
106
|
- !ruby/object:Gem::Version
|
99
107
|
version: '0'
|
100
108
|
requirements: []
|
101
109
|
rubyforge_project:
|
102
|
-
rubygems_version:
|
110
|
+
rubygems_version: 1.8.23
|
103
111
|
signing_key:
|
104
|
-
specification_version:
|
105
|
-
summary: 'rbtrace: like strace but for ruby code'
|
112
|
+
specification_version: 3
|
113
|
+
summary: ! 'rbtrace: like strace but for ruby code'
|
106
114
|
test_files: []
|
107
|
-
has_rdoc:
|
checksums.yaml
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
---
|
2
|
-
SHA1:
|
3
|
-
metadata.gz: ae8cd64167eb2f3275caf66175c00370018c43fe
|
4
|
-
data.tar.gz: 8d389f4891f37cbbb9e93c4e623542ba213bd88c
|
5
|
-
SHA512:
|
6
|
-
metadata.gz: 54aef3a098fb9be86926238e33fe47fea73d64f89aa3762a282ebf71d6bdb7010eb40b51afe3738b79852eacd1fa2387e4e8795d503ffd878e1be44eeeeb1470
|
7
|
-
data.tar.gz: 115be7ca55f189ad6a1a5dfcc0f84346752141ab6a9b8dab3b42ed545af78d72261d92411778599143aa2b6d5a833ca90756572133cc7e26bc3de7f9ce5ec56c
|