File tree Expand file tree Collapse file tree 6 files changed +66
-5
lines changed
dev-packages/node-integration-tests/suites Expand file tree Collapse file tree 6 files changed +66
-5
lines changed Original file line number Diff line number Diff line change
1
+ const Sentry = require ( '@sentry/node' ) ;
2
+
3
+ function configureSentry ( ) {
4
+ Sentry . init ( {
5
+ dsn :
'https://[email protected] /1337' ,
6
+ release : '1.0' ,
7
+ autoSessionTracking : false ,
8
+ } ) ;
9
+
10
+ Sentry . metrics . increment ( 'test' ) ;
11
+ }
12
+
13
+ async function main ( ) {
14
+ configureSentry ( ) ;
15
+ await new Promise ( resolve => setTimeout ( resolve , 1000 ) ) ;
16
+ process . exit ( 0 ) ;
17
+ }
18
+
19
+ main ( ) ;
Original file line number Diff line number Diff line change
1
+ const Sentry = require ( '@sentry/node' ) ;
2
+
3
+ function configureSentry ( ) {
4
+ Sentry . init ( {
5
+ dsn :
'https://[email protected] /1337' ,
6
+ release : '1.0' ,
7
+ autoSessionTracking : false ,
8
+ } ) ;
9
+
10
+ Sentry . metrics . increment ( 'test' ) ;
11
+ }
12
+
13
+ async function main ( ) {
14
+ configureSentry ( ) ;
15
+ await new Promise ( resolve => setTimeout ( resolve , 1000 ) ) ;
16
+ }
17
+
18
+ main ( ) ;
Original file line number Diff line number Diff line change
1
+ import { createRunner } from '../../utils/runner' ;
2
+
3
+ describe ( 'metrics' , ( ) => {
4
+ test ( 'should exit' , done => {
5
+ const runner = createRunner ( __dirname , 'should-exit.js' ) . start ( ) ;
6
+
7
+ setTimeout ( ( ) => {
8
+ expect ( runner . childHasExited ( ) ) . toBe ( true ) ;
9
+ done ( ) ;
10
+ } , 5_000 ) ;
11
+ } ) ;
12
+
13
+ test ( 'should exit forced' , done => {
14
+ const runner = createRunner ( __dirname , 'should-exit-forced.js' ) . start ( ) ;
15
+
16
+ setTimeout ( ( ) => {
17
+ expect ( runner . childHasExited ( ) ) . toBe ( true ) ;
18
+ done ( ) ;
19
+ } , 5_000 ) ;
20
+ } ) ;
21
+ } ) ;
Original file line number Diff line number Diff line change @@ -8,9 +8,6 @@ Sentry.init({
8
8
transport : loggingTransport ,
9
9
} ) ;
10
10
11
- // Stop the process from exiting before the transaction is sent
12
- setInterval ( ( ) => { } , 1000 ) ;
13
-
14
11
Sentry . startSpan (
15
12
{
16
13
name : 'Test Transaction' ,
Original file line number Diff line number Diff line change @@ -37,7 +37,10 @@ export class MetricsAggregator implements MetricsAggregatorBase {
37
37
public constructor ( private readonly _client : Client ) {
38
38
this . _buckets = new Map ( ) ;
39
39
this . _bucketsTotalWeight = 0 ;
40
- this . _interval = setInterval ( ( ) => this . _flush ( ) , DEFAULT_FLUSH_INTERVAL ) . unref ( ) ;
40
+ this . _interval = setInterval ( ( ) => this . _flush ( ) , DEFAULT_FLUSH_INTERVAL ) ;
41
+ if ( this . _interval . unref ) {
42
+ this . _interval . unref ( ) ;
43
+ }
41
44
this . _flushShift = Math . floor ( ( Math . random ( ) * DEFAULT_FLUSH_INTERVAL ) / 1000 ) ;
42
45
this . _forceFlush = false ;
43
46
}
Original file line number Diff line number Diff line change @@ -31,7 +31,10 @@ export class SessionFlusher implements SessionFlusherLike {
31
31
this . _isEnabled = true ;
32
32
33
33
// Call to setInterval, so that flush is called every 60 seconds.
34
- this . _intervalId = setInterval ( ( ) => this . flush ( ) , this . flushTimeout * 1000 ) . unref ( ) ;
34
+ this . _intervalId = setInterval ( ( ) => this . flush ( ) , this . flushTimeout * 1000 ) ;
35
+ if ( this . _intervalId . unref ) {
36
+ this . _intervalId . unref ( ) ;
37
+ }
35
38
this . _sessionAttrs = attrs ;
36
39
}
37
40
You can’t perform that action at this time.
0 commit comments