skylight 2.0.0.beta2 → 2.0.0.beta3
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +22 -1
- data/ERRORS.md +5 -0
- data/ext/extconf.rb +1 -1
- data/ext/libskylight.yml +6 -6
- data/ext/skylight_native.c +78 -18
- data/lib/skylight.rb +1 -5
- data/lib/skylight/cli/doctor.rb +2 -2
- data/lib/skylight/errors.rb +57 -0
- data/lib/skylight/native.rb +2 -2
- data/lib/skylight/probes/sinatra_add_middleware.rb +0 -2
- data/lib/skylight/version.rb +1 -1
- metadata +20 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4b5dae77c81d35433c8d2da47b0a7a2b82f7730888802cf3ab892815ceba3f5a
|
4
|
+
data.tar.gz: f8c1649317979a382353b1410e1453e4af12fa025e2d03302860af1673990317
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 00f7d040355b847525a0c4d1ee6e47a5e64ab8040f9a7cb709fdbd482a912e6fef7d218a181bb9eb655fd3bdabd83a8af7d279527910c2ab783238b17780e519
|
7
|
+
data.tar.gz: dbe7b6e960a53d0be3f5ea0423b4bad1cb5dc90f0343c9ea7d73a897182537255f7a7d099e1e31d47e672abc24d29317bce511581c0d436f339091affbd8f74a
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
## 2.0.0-beta3 (March 22, 2017)
|
2
|
+
|
3
|
+
* [BREAKING] `log_sql_parse_errors` config option is now on by default.
|
4
|
+
* [IMPROVEMENT] Improved handling of errors generated in the Rust agent.
|
5
|
+
* [IMPROVEMENT] Add a probe method to Instrumentable as a shortcut
|
6
|
+
* [IMRPOVEMENT] Add logging to Instrumentable for easier access
|
7
|
+
* [IMPROVEMENT] Improved logging during startup
|
8
|
+
|
1
9
|
## 2.0.0-beta2 (February 5, 2017)
|
2
10
|
|
3
11
|
* [BUGFIX] Fix incorrect module path that caused installation issues
|
@@ -7,10 +15,23 @@
|
|
7
15
|
* [FEATURE] New SQL lexer to support a wider variety of SQL queries.
|
8
16
|
* [BREAKING] Drop support for a number of deprecated libraries, including Rails prior to 4.2, Ruby prior to 2.2, and Sinatra prior to 1.4.
|
9
17
|
|
18
|
+
## 1.6.0 (March 21, 2018)
|
19
|
+
|
20
|
+
* [FEATURE] Time spent the Rails router is now identified separately in the trace
|
21
|
+
* [IMPROVEMENT] Switch logger to debug mode if tracing is enabled
|
22
|
+
* [IMPROVEMENT] Improved logging for a number of error cases
|
23
|
+
* [IMPROVEMENT] Middleware probe should now accept anything allowed by Rack::Lint
|
24
|
+
* [IMPROVEMENT] We were using arity checks to determine Rails version but due to other libraries' monkey patches this could sometimes fail. We just check version numbers now.
|
25
|
+
* [BUGFIX] Middleware probe no longer errors when Middleware returns a frozen array
|
26
|
+
|
27
|
+
## 1.5.1 (February 7, 2018)
|
28
|
+
|
29
|
+
* [BUGFIX] `skylight doctor` no longer erroneously reports inability to reach Skylight servers.
|
30
|
+
|
10
31
|
## 1.5.0 (December 6, 2017)
|
11
32
|
|
12
33
|
* [FEATURE] [Coach](https://github.com/gocardless/coach) instrumentation. Enabled automatically via ActiveSupport::Notifications.
|
13
|
-
* [FEATURE] Option to enable or disable agent by setting
|
34
|
+
* [FEATURE] Option to enable or disable agent by setting SKYLIGHT_ENABLED via ENV.
|
14
35
|
* [IMPROVEMENT] Better logging for certain error cases.
|
15
36
|
* [BUGFIX] Backport a SPEC compliance fix for older Rack::ETag to resolve case where the Middleware probe could cause empty traces.
|
16
37
|
* [BUGFIX] Fix a case where using the non-block form of `Skylight.instrument` with `Skylight.done` could cause lost trace data.
|
data/ERRORS.md
ADDED
data/ext/extconf.rb
CHANGED
@@ -246,7 +246,7 @@ $CFLAGS << " -std=c99 -Wall -fno-strict-aliasing"
|
|
246
246
|
|
247
247
|
# Allow stricter checks to be turned on for development or debugging
|
248
248
|
if SKYLIGHT_EXT_STRICT
|
249
|
-
$CFLAGS << " -
|
249
|
+
$CFLAGS << " -Wextra"
|
250
250
|
end
|
251
251
|
|
252
252
|
# TODO: Compute the relative path to the location
|
data/ext/libskylight.yml
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
---
|
2
|
-
version: "2.0.0-
|
2
|
+
version: "2.0.0-5ca78bf"
|
3
3
|
checksums:
|
4
|
-
x86-linux: "
|
5
|
-
x86_64-linux: "
|
6
|
-
x86_64-linux-musl: "
|
7
|
-
x86_64-darwin: "
|
8
|
-
x86_64-freebsd: "
|
4
|
+
x86-linux: "b919d4bba6cd4998f63115a558229ac4f151b5a2df1acec767a6956650b5dc36"
|
5
|
+
x86_64-linux: "862f509a9c4b53f4d18d1f41a1fbd6919ac822a7efa3c24a57acbfaf85a450ac"
|
6
|
+
x86_64-linux-musl: "b1bec2068b32465ae70291f5376f4384bcc09635be678974ee93a3f9a847bfe2"
|
7
|
+
x86_64-darwin: "4cad72f0b4d7fda8e785b98e4d1523f05216e4b925ab79db02713f463c387011"
|
8
|
+
x86_64-freebsd: "103bdfb9c47c90855b78f5e7bfa591e935ad6239533c6c3f07a1d82cf5a1528a"
|
data/ext/skylight_native.c
CHANGED
@@ -44,10 +44,11 @@ STR2BUF(VALUE str) {
|
|
44
44
|
};
|
45
45
|
}
|
46
46
|
|
47
|
-
#define CHECK_FFI(
|
47
|
+
#define CHECK_FFI(code, method_name) \
|
48
48
|
do { \
|
49
|
-
if ((
|
50
|
-
|
49
|
+
if ((code) != 0 ) { \
|
50
|
+
VALUE error_class = rb_funcall(rb_eNativeError, rb_intern("for_code"), 1, INT2NUM(code)); \
|
51
|
+
rb_raise(error_class, method_name); \
|
51
52
|
return Qnil; \
|
52
53
|
} \
|
53
54
|
} while(0)
|
@@ -99,9 +100,12 @@ typedef VALUE (*blocking_fn_t)(void*);
|
|
99
100
|
*/
|
100
101
|
|
101
102
|
VALUE rb_mSkylight;
|
103
|
+
VALUE rb_eNativeError;
|
102
104
|
VALUE rb_mCore;
|
103
105
|
VALUE rb_mUtil;
|
104
106
|
VALUE rb_cClock;
|
107
|
+
VALUE rb_cTrace;
|
108
|
+
VALUE rb_cInstrumenter;
|
105
109
|
|
106
110
|
static const char* no_instrumenter_msg =
|
107
111
|
"Instrumenter not currently running";
|
@@ -109,6 +113,7 @@ static const char* no_instrumenter_msg =
|
|
109
113
|
static const char* consumed_trace_msg =
|
110
114
|
"Trace objects cannot be used once it has been submitted to the instrumenter";
|
111
115
|
|
116
|
+
|
112
117
|
static VALUE
|
113
118
|
load_libskylight(VALUE klass, VALUE path) {
|
114
119
|
int res;
|
@@ -175,7 +180,7 @@ instrumenter_new(VALUE klass, VALUE rb_env) {
|
|
175
180
|
|
176
181
|
CHECK_FFI(
|
177
182
|
sky_instrumenter_new(env, envc, &instrumenter),
|
178
|
-
"
|
183
|
+
"Instrumenter#native_new");
|
179
184
|
|
180
185
|
return Data_Wrap_Struct(klass, NULL, sky_instrumenter_free, instrumenter);
|
181
186
|
}
|
@@ -213,7 +218,7 @@ instrumenter_stop(VALUE self) {
|
|
213
218
|
|
214
219
|
CHECK_FFI(
|
215
220
|
sky_instrumenter_stop(instrumenter),
|
216
|
-
"
|
221
|
+
"Instrumenter#native_stop");
|
217
222
|
|
218
223
|
sky_deactivate_memprof();
|
219
224
|
|
@@ -249,7 +254,7 @@ instrumenter_track_desc(VALUE self, VALUE rb_endpoint, VALUE rb_desc) {
|
|
249
254
|
|
250
255
|
CHECK_FFI(
|
251
256
|
sky_instrumenter_track_desc(instrumenter, STR2BUF(rb_endpoint), STR2BUF(rb_desc), &tracked),
|
252
|
-
"
|
257
|
+
"Instrumenter#native_track_desc");
|
253
258
|
|
254
259
|
if (tracked) {
|
255
260
|
return Qtrue;
|
@@ -277,7 +282,7 @@ trace_new(VALUE klass, VALUE start, VALUE uuid, VALUE endpoint, VALUE meta) {
|
|
277
282
|
|
278
283
|
CHECK_FFI(
|
279
284
|
sky_trace_new(NUM2ULL(start), STR2BUF(uuid), STR2BUF(endpoint), &trace),
|
280
|
-
"
|
285
|
+
"Trace#native_new");
|
281
286
|
|
282
287
|
sky_clear_allocation_count();
|
283
288
|
|
@@ -293,7 +298,7 @@ trace_get_started_at(VALUE self) {
|
|
293
298
|
|
294
299
|
CHECK_FFI(
|
295
300
|
sky_trace_start(trace, &start),
|
296
|
-
"
|
301
|
+
"Trace#native_get_started_at");
|
297
302
|
|
298
303
|
return ULL2NUM(start);
|
299
304
|
}
|
@@ -307,7 +312,7 @@ trace_get_endpoint(VALUE self) {
|
|
307
312
|
|
308
313
|
CHECK_FFI(
|
309
314
|
sky_trace_endpoint(trace, &endpoint),
|
310
|
-
"
|
315
|
+
"Trace#native_get_endpoint");
|
311
316
|
|
312
317
|
return BUF2STR(endpoint);
|
313
318
|
}
|
@@ -321,13 +326,15 @@ trace_set_endpoint(VALUE self, VALUE endpoint) {
|
|
321
326
|
|
322
327
|
CHECK_FFI(
|
323
328
|
sky_trace_set_endpoint(trace, STR2BUF(endpoint)),
|
324
|
-
"
|
329
|
+
"Trace#native_set_endpoint");
|
325
330
|
|
326
331
|
return Qnil;
|
327
332
|
}
|
328
333
|
|
329
334
|
static VALUE
|
330
335
|
trace_set_exception(VALUE self, VALUE exception) {
|
336
|
+
UNUSED(self);
|
337
|
+
UNUSED(exception);
|
331
338
|
return Qnil;
|
332
339
|
}
|
333
340
|
|
@@ -340,7 +347,7 @@ trace_get_uuid(VALUE self) {
|
|
340
347
|
|
341
348
|
CHECK_FFI(
|
342
349
|
sky_trace_uuid(trace, &uuid),
|
343
|
-
"
|
350
|
+
"Trace#native_get_uuid");
|
344
351
|
|
345
352
|
return BUF2STR(uuid);
|
346
353
|
}
|
@@ -357,7 +364,7 @@ trace_start_span(VALUE self, VALUE time, VALUE category) {
|
|
357
364
|
|
358
365
|
CHECK_FFI(
|
359
366
|
sky_trace_instrument(trace, NUM2ULL(time), STR2BUF(category), &span),
|
360
|
-
"
|
367
|
+
"Trace#native_start_span");
|
361
368
|
|
362
369
|
if (sky_have_memprof()) {
|
363
370
|
sky_trace_span_add_uint_annotation(trace, span, 2, sky_consume_allocations());
|
@@ -381,11 +388,27 @@ trace_stop_span(VALUE self, VALUE span, VALUE time) {
|
|
381
388
|
|
382
389
|
CHECK_FFI(
|
383
390
|
sky_trace_span_done(trace, FIX2UINT(span), NUM2ULL(time)),
|
384
|
-
"
|
391
|
+
"Trace#native_stop_span");
|
385
392
|
|
386
393
|
return Qnil;
|
387
394
|
}
|
388
395
|
|
396
|
+
static VALUE
|
397
|
+
trace_span_get_category(VALUE self, VALUE span) {
|
398
|
+
sky_trace_t* trace;
|
399
|
+
sky_buf_t category;
|
400
|
+
|
401
|
+
My_Struct(trace, sky_trace_t, consumed_trace_msg);
|
402
|
+
|
403
|
+
CHECK_TYPE(span, T_FIXNUM);
|
404
|
+
|
405
|
+
CHECK_FFI(
|
406
|
+
sky_trace_span_get_category(trace, FIX2UINT(span), &category),
|
407
|
+
"Trace#native_span_get_category");
|
408
|
+
|
409
|
+
return BUF2STR(category);
|
410
|
+
}
|
411
|
+
|
389
412
|
static VALUE
|
390
413
|
trace_span_set_title(VALUE self, VALUE span, VALUE title) {
|
391
414
|
sky_trace_t* trace;
|
@@ -402,6 +425,22 @@ trace_span_set_title(VALUE self, VALUE span, VALUE title) {
|
|
402
425
|
return Qnil;
|
403
426
|
}
|
404
427
|
|
428
|
+
static VALUE
|
429
|
+
trace_span_get_title(VALUE self, VALUE span) {
|
430
|
+
sky_trace_t* trace;
|
431
|
+
sky_buf_t title;
|
432
|
+
|
433
|
+
My_Struct(trace, sky_trace_t, consumed_trace_msg);
|
434
|
+
|
435
|
+
CHECK_TYPE(span, T_FIXNUM);
|
436
|
+
|
437
|
+
CHECK_FFI(
|
438
|
+
sky_trace_span_get_title(trace, FIX2UINT(span), &title),
|
439
|
+
"Trace#native_span_get_title");
|
440
|
+
|
441
|
+
return BUF2STR(title);
|
442
|
+
}
|
443
|
+
|
405
444
|
static VALUE
|
406
445
|
trace_span_set_description(VALUE self, VALUE span, VALUE desc) {
|
407
446
|
sky_trace_t* trace;
|
@@ -413,23 +452,38 @@ trace_span_set_description(VALUE self, VALUE span, VALUE desc) {
|
|
413
452
|
|
414
453
|
CHECK_FFI(
|
415
454
|
sky_trace_span_set_desc(trace, FIX2UINT(span), STR2BUF(desc)),
|
416
|
-
"
|
455
|
+
"Trace#native_span_set_description");
|
417
456
|
|
418
457
|
return Qnil;
|
419
458
|
}
|
420
459
|
|
421
460
|
static VALUE
|
422
461
|
trace_span_set_meta(VALUE self, VALUE span, VALUE meta) {
|
462
|
+
UNUSED(self);
|
463
|
+
UNUSED(span);
|
464
|
+
UNUSED(meta);
|
465
|
+
return Qnil;
|
466
|
+
}
|
467
|
+
|
468
|
+
static VALUE
|
469
|
+
trace_span_started(VALUE self) {
|
470
|
+
UNUSED(self);
|
423
471
|
return Qnil;
|
424
472
|
}
|
425
473
|
|
426
474
|
static VALUE
|
427
475
|
trace_span_set_exception(VALUE self, VALUE span, VALUE exception, VALUE exception_details) {
|
476
|
+
UNUSED(self);
|
477
|
+
UNUSED(span);
|
478
|
+
UNUSED(exception);
|
479
|
+
UNUSED(exception_details);
|
428
480
|
return Qnil;
|
429
481
|
}
|
430
482
|
|
431
483
|
static VALUE
|
432
484
|
trace_span_get_correlation_header(VALUE self, VALUE span_id) {
|
485
|
+
UNUSED(self);
|
486
|
+
UNUSED(span_id);
|
433
487
|
return Qnil;
|
434
488
|
}
|
435
489
|
|
@@ -460,10 +514,10 @@ lex_sql(VALUE klass, VALUE rb_sql, VALUE rb_use_old_lexer) {
|
|
460
514
|
|
461
515
|
if (RTEST(rb_use_old_lexer)) {
|
462
516
|
CHECK_FFI(sky_lex_sql_old(sql, &title, &statement),
|
463
|
-
"
|
517
|
+
"Skylight#lex_sql (old)");
|
464
518
|
} else {
|
465
519
|
CHECK_FFI(sky_lex_sql(sql, &title, &statement),
|
466
|
-
"
|
520
|
+
"Skylight#lex_sql");
|
467
521
|
}
|
468
522
|
|
469
523
|
// Set the statement return
|
@@ -486,6 +540,9 @@ lex_sql(VALUE klass, VALUE rb_sql, VALUE rb_use_old_lexer) {
|
|
486
540
|
|
487
541
|
void Init_skylight_native() {
|
488
542
|
rb_mSkylight = rb_define_module("Skylight");
|
543
|
+
|
544
|
+
rb_eNativeError = rb_const_get(rb_mSkylight, rb_intern("NativeError"));
|
545
|
+
|
489
546
|
rb_define_singleton_method(rb_mSkylight, "load_libskylight", load_libskylight, 1);
|
490
547
|
rb_define_singleton_method(rb_mSkylight, "lex_sql", lex_sql, 2);
|
491
548
|
|
@@ -496,7 +553,7 @@ void Init_skylight_native() {
|
|
496
553
|
rb_cClock = rb_define_class_under(rb_mUtil, "Clock", rb_cObject);
|
497
554
|
rb_define_method(rb_cClock, "native_hrtime", clock_high_res_time, 0);
|
498
555
|
|
499
|
-
|
556
|
+
rb_cTrace = rb_const_get(rb_mSkylight, rb_intern("Trace"));
|
500
557
|
rb_define_singleton_method(rb_cTrace, "native_new", trace_new, 4);
|
501
558
|
rb_define_method(rb_cTrace, "native_get_started_at", trace_get_started_at, 0);
|
502
559
|
rb_define_method(rb_cTrace, "native_get_endpoint", trace_get_endpoint, 0);
|
@@ -505,13 +562,16 @@ void Init_skylight_native() {
|
|
505
562
|
rb_define_method(rb_cTrace, "native_get_uuid", trace_get_uuid, 0);
|
506
563
|
rb_define_method(rb_cTrace, "native_start_span", trace_start_span, 2);
|
507
564
|
rb_define_method(rb_cTrace, "native_stop_span", trace_stop_span, 2);
|
565
|
+
rb_define_method(rb_cTrace, "native_span_get_category", trace_span_get_category, 1);
|
508
566
|
rb_define_method(rb_cTrace, "native_span_set_title", trace_span_set_title, 2);
|
567
|
+
rb_define_method(rb_cTrace, "native_span_get_title", trace_span_get_title, 1);
|
509
568
|
rb_define_method(rb_cTrace, "native_span_set_description", trace_span_set_description, 2);
|
510
569
|
rb_define_method(rb_cTrace, "native_span_set_meta", trace_span_set_meta, 2);
|
570
|
+
rb_define_method(rb_cTrace, "native_span_started", trace_span_started, 1);
|
511
571
|
rb_define_method(rb_cTrace, "native_span_set_exception", trace_span_set_exception, 3);
|
512
572
|
rb_define_method(rb_cTrace, "native_span_get_correlation_header", trace_span_get_correlation_header, 1);
|
513
573
|
|
514
|
-
|
574
|
+
rb_cInstrumenter = rb_const_get(rb_mSkylight, rb_intern("Instrumenter"));
|
515
575
|
rb_define_singleton_method(rb_cInstrumenter, "native_new", instrumenter_new, 1);
|
516
576
|
rb_define_method(rb_cInstrumenter, "native_start", instrumenter_start, 0);
|
517
577
|
rb_define_method(rb_cInstrumenter, "native_stop", instrumenter_stop, 0);
|
data/lib/skylight.rb
CHANGED
@@ -6,6 +6,7 @@ require 'skylight/middleware'
|
|
6
6
|
require 'skylight/api'
|
7
7
|
require 'skylight/helpers'
|
8
8
|
require 'skylight/config'
|
9
|
+
require 'skylight/errors'
|
9
10
|
require 'skylight/native'
|
10
11
|
|
11
12
|
module Skylight
|
@@ -28,9 +29,4 @@ module Skylight
|
|
28
29
|
Config
|
29
30
|
end
|
30
31
|
|
31
|
-
# Install probes
|
32
|
-
def self.probe(*probes)
|
33
|
-
Core::Probes.probe(*probes)
|
34
|
-
end
|
35
|
-
|
36
32
|
end
|
data/lib/skylight/cli/doctor.rb
CHANGED
@@ -11,7 +11,7 @@ module Skylight
|
|
11
11
|
say "Checking SSL"
|
12
12
|
http = Util::HTTP.new(config)
|
13
13
|
indent do
|
14
|
-
req = http.get("/"
|
14
|
+
req = http.get("/status")
|
15
15
|
if req.success?
|
16
16
|
say "OK", :green
|
17
17
|
else
|
@@ -113,7 +113,7 @@ module Skylight
|
|
113
113
|
logger.level = Logger::DEBUG
|
114
114
|
# Remove excess formatting
|
115
115
|
logger.formatter = proc { |severity, datetime, progname, msg|
|
116
|
-
msg = msg.sub("[SKYLIGHT] [#{Skylight::
|
116
|
+
msg = msg.sub("[SKYLIGHT] [#{Skylight::VERSION}] ", '')
|
117
117
|
say "#{severity} - #{msg}" # Definitely non-standard
|
118
118
|
}
|
119
119
|
config.logger = logger
|
@@ -0,0 +1,57 @@
|
|
1
|
+
module Skylight
|
2
|
+
class NativeError < StandardError
|
3
|
+
|
4
|
+
@@classes = { }
|
5
|
+
|
6
|
+
def self.register(code, name, message)
|
7
|
+
if @@classes.has_key?(code)
|
8
|
+
raise "Duplicate error class code: #{code}; name=#{name}"
|
9
|
+
end
|
10
|
+
|
11
|
+
Skylight.module_eval <<-ruby
|
12
|
+
class #{name}Error < NativeError
|
13
|
+
def self.code; #{code}; end
|
14
|
+
def self.message; #{message.to_json}; end
|
15
|
+
end
|
16
|
+
ruby
|
17
|
+
|
18
|
+
klass = Skylight.const_get("#{name}Error")
|
19
|
+
|
20
|
+
@@classes[code] = klass
|
21
|
+
end
|
22
|
+
|
23
|
+
def self.for_code(code)
|
24
|
+
@@classes[code] || self
|
25
|
+
end
|
26
|
+
|
27
|
+
attr_reader :method_name
|
28
|
+
|
29
|
+
def self.code
|
30
|
+
9999
|
31
|
+
end
|
32
|
+
|
33
|
+
def self.message
|
34
|
+
"Encountered an unknown internal error"
|
35
|
+
end
|
36
|
+
|
37
|
+
def initialize(method_name)
|
38
|
+
@method_name = method_name
|
39
|
+
super(sprintf("[E%04d] %s [%s]", code, message, method_name))
|
40
|
+
end
|
41
|
+
|
42
|
+
def code
|
43
|
+
self.class.code
|
44
|
+
end
|
45
|
+
|
46
|
+
def formatted_code
|
47
|
+
"%04d" % code
|
48
|
+
end
|
49
|
+
|
50
|
+
# E0003
|
51
|
+
register(3, "MaximumTraceSpans", "Exceeded maximum number of spans in a trace.")
|
52
|
+
|
53
|
+
# E0004
|
54
|
+
register(4, "SqlLex", "Failed to lex SQL query.")
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
data/lib/skylight/native.rb
CHANGED
@@ -56,7 +56,7 @@ module Skylight
|
|
56
56
|
|
57
57
|
if File.exist?(install_log) && File.read(install_log) =~ /ERROR/
|
58
58
|
config.alert_logger.error \
|
59
|
-
"[SKYLIGHT] [#{Skylight::
|
59
|
+
"[SKYLIGHT] [#{Skylight::VERSION}] The Skylight native extension failed to install. " \
|
60
60
|
"Please check #{install_log} and notify support@skylight.io. " \
|
61
61
|
"The missing extension will not affect the functioning of your application."
|
62
62
|
end
|
@@ -65,7 +65,7 @@ module Skylight
|
|
65
65
|
# @api private
|
66
66
|
def self.warn_skylight_native_missing(config)
|
67
67
|
config.alert_logger.error \
|
68
|
-
"[SKYLIGHT] [#{Skylight::
|
68
|
+
"[SKYLIGHT] [#{Skylight::VERSION}] The Skylight native extension for " \
|
69
69
|
"your platform wasn't found. Supported operating systems are " \
|
70
70
|
"Linux 2.6.18+ and Mac OS X 10.8+. The missing extension will not " \
|
71
71
|
"affect the functioning of your application. If you are on a " \
|
@@ -3,12 +3,10 @@ module Skylight
|
|
3
3
|
module Sinatra
|
4
4
|
class Probe
|
5
5
|
def install
|
6
|
-
puts "Installed"
|
7
6
|
class << ::Sinatra::Base
|
8
7
|
alias build_without_sk build
|
9
8
|
|
10
9
|
def build(*args, &block)
|
11
|
-
puts "Using Middleware"
|
12
10
|
self.use Skylight::Middleware
|
13
11
|
build_without_sk(*args, &block)
|
14
12
|
end
|
data/lib/skylight/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: skylight
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.0.
|
4
|
+
version: 2.0.0.beta3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tilde, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-03-22 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: skylight-core
|
@@ -16,14 +16,14 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - '='
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 2.0.0.
|
19
|
+
version: 2.0.0.beta3
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - '='
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 2.0.0.
|
26
|
+
version: 2.0.0.beta3
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: bundler
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -136,6 +136,20 @@ dependencies:
|
|
136
136
|
- - "~>"
|
137
137
|
- !ruby/object:Gem::Version
|
138
138
|
version: '0.9'
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: rake-compiler
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - "~>"
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: 1.0.4
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - "~>"
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: 1.0.4
|
139
153
|
description:
|
140
154
|
email:
|
141
155
|
- engineering@tilde.io
|
@@ -148,6 +162,7 @@ files:
|
|
148
162
|
- CHANGELOG.md
|
149
163
|
- CLA.md
|
150
164
|
- CONTRIBUTING.md
|
165
|
+
- ERRORS.md
|
151
166
|
- LICENSE.md
|
152
167
|
- README.md
|
153
168
|
- bin/skylight
|
@@ -163,6 +178,7 @@ files:
|
|
163
178
|
- lib/skylight/cli/helpers.rb
|
164
179
|
- lib/skylight/config.rb
|
165
180
|
- lib/skylight/data/cacert.pem
|
181
|
+
- lib/skylight/errors.rb
|
166
182
|
- lib/skylight/helpers.rb
|
167
183
|
- lib/skylight/instrumenter.rb
|
168
184
|
- lib/skylight/middleware.rb
|