@@ -68,10 +68,10 @@ class Task extends EventEmitter {
68
68
run ( ) {
69
69
if ( ! this . active || this . running ) return false ;
70
70
this . running = true ;
71
- this . emit ( 'begin' ) ;
71
+ this . emit ( 'begin' , this ) ;
72
72
this . exec ( ( err , res ) => {
73
- if ( err ) this . emit ( 'error' , err ) ;
74
- this . emit ( 'end' , res ) ;
73
+ if ( err ) this . emit ( 'error' , err , this ) ;
74
+ this . emit ( 'end' , res , this ) ;
75
75
this . count ++ ;
76
76
this . running = false ;
77
77
} ) ;
@@ -91,12 +91,12 @@ class Scheduler extends EventEmitter {
91
91
this . tasks . set ( name , task ) ;
92
92
task . on ( 'error' , err => {
93
93
this . logger . error ( task . name + '\t' + err . message ) ;
94
- this . emit ( 'error' , err ) ;
94
+ this . emit ( 'error' , err , task ) ;
95
95
} ) ;
96
96
task . on ( 'begin' , ( ) => {
97
97
this . logger . info ( task . name + '\tbegin' ) ;
98
98
} ) ;
99
- task . on ( 'end' , res => {
99
+ task . on ( 'end' , ( res = '' ) => {
100
100
this . logger . warn ( task . name + '\tend\t' + res ) ;
101
101
} ) ;
102
102
task . start ( ) ;
@@ -120,18 +120,18 @@ class Scheduler extends EventEmitter {
120
120
121
121
const scheduler = new Scheduler ( ) ;
122
122
123
- scheduler . on ( 'error' , err => {
124
- console . log ( err . stack ) ;
123
+ scheduler . on ( 'error' , ( err , task ) => {
124
+ console . log ( `Error in ${ task . name } : ${ err . stack } ` ) ;
125
125
//process.exit(1);
126
126
} ) ;
127
127
128
- scheduler . task ( 'name1' , '2019-03-12T14:30Z ' , done => {
128
+ scheduler . task ( 'name1' , '2019-03-12T14:37Z ' , done => {
129
129
setTimeout ( ( ) => {
130
130
done ( null , 'task successed' ) ;
131
131
} , 1000 ) ;
132
132
} ) ;
133
133
134
- scheduler . task ( 'name2' , '2019-03-12T14:31Z ' , done => {
134
+ scheduler . task ( 'name2' , '2019-03-12T14:37Z ' , done => {
135
135
setTimeout ( ( ) => {
136
136
done ( new Error ( 'task failed' ) ) ;
137
137
} , 1100 ) ;
0 commit comments