1
- const fs = require ( 'fs' ) ;
2
- const { EventEmitter } = require ( 'events' ) ;
3
- const _ = require ( 'lodash' ) ;
4
- const Q = require ( 'q' ) ;
5
- const Docker = require ( 'dockerode' ) ;
6
- const DockerEvents = require ( 'docker-events' ) ;
7
- const bodyParser = require ( 'body-parser' ) ;
8
- const CFError = require ( 'cf-errors' ) ;
9
- const logger = require ( 'cf-logs' ) . Logger ( 'codefresh:containerLogger' ) ;
10
- const { TaskLogger } = require ( '@codefresh-io/task-logger' ) ;
11
- const express = require ( 'express' ) ;
1
+ const fs = require ( 'fs' ) ;
2
+ const { EventEmitter } = require ( 'events' ) ;
3
+ const _ = require ( 'lodash' ) ;
4
+ const Q = require ( 'q' ) ;
5
+ const Docker = require ( 'dockerode' ) ;
6
+ const DockerEvents = require ( 'docker-events' ) ;
7
+ const bodyParser = require ( 'body-parser' ) ;
8
+ const CFError = require ( 'cf-errors' ) ;
9
+ const logger = require ( 'cf-logs' ) . Logger ( 'codefresh:containerLogger' ) ;
10
+ const { TaskLogger } = require ( '@codefresh-io/task-logger' ) ;
11
+ const express = require ( 'express' ) ;
12
12
const { ContainerStatus } = require ( './enums' ) ;
13
13
const { LoggerStrategy } = require ( './enums' ) ;
14
14
const { ContainerHandlingStatus } = require ( './enums' ) ;
15
- const ContainerLogger = require ( './ContainerLogger' ) ;
15
+ const ContainerLogger = require ( './ContainerLogger' ) ;
16
16
17
17
const initialState = {
18
18
pid : process . pid , status : 'init' , lastLogsDate : new Date ( ) , failedHealthChecks : [ ] , restartCounter : 0 , containers : { }
@@ -27,13 +27,13 @@ class Logger {
27
27
buildFinishedPromise,
28
28
showProgress,
29
29
} ) {
30
- this . taskLoggerConfig = taskLoggerConfig ;
31
- this . loggerId = loggerId ;
30
+ this . taskLoggerConfig = taskLoggerConfig ;
31
+ this . loggerId = loggerId ;
32
32
this . findExistingContainers = findExistingContainers === 'true' ;
33
- this . logSizeLimit = logSizeLimit ;
34
- this . containerLoggers = [ ] ;
35
- this . logSize = 0 ;
36
- this . taskLogger = undefined ;
33
+ this . logSizeLimit = logSizeLimit ;
34
+ this . containerLoggers = [ ] ;
35
+ this . logSize = 0 ;
36
+ this . taskLogger = undefined ;
37
37
this . buildFinishedPromise = buildFinishedPromise || Q . resolve ( ) ;
38
38
this . finishedContainers = 0 ;
39
39
this . finishedContainersEmitter = new EventEmitter ( ) ;
@@ -48,7 +48,7 @@ class Logger {
48
48
// console.log('Using /var/run/docker.sock');
49
49
}
50
50
51
- this . docker = new Docker ( {
51
+ this . docker = new Docker ( {
52
52
socketPath : dockerSockPath ,
53
53
} ) ;
54
54
this . _readState ( ) ;
@@ -131,11 +131,11 @@ class Logger {
131
131
this . state = _ . omit ( JSON . parse ( fs . readFileSync ( filePath , 'utf8' ) , [ 'containers' , 'pid' ] ) ) ;
132
132
this . state . containers = { } ;
133
133
this . state . pid = process . pid ;
134
- let restartCounter = _ . get ( this . state , 'restartCounter' , 0 ) ;
134
+ let restartCounter = _ . get ( this . state , 'restartCounter' , 0 ) ;
135
135
restartCounter ++ ;
136
136
this . state . restartCounter = restartCounter ;
137
137
} else {
138
- this . state = initialState ;
138
+ this . state = initialState ;
139
139
}
140
140
}
141
141
@@ -153,7 +153,7 @@ class Logger {
153
153
* @param disableLog
154
154
*/
155
155
_writeNewState ( disableLog = false ) {
156
- const filePath = `${ __dirname } /state.json` ;
156
+ const filePath = `${ __dirname } /state.json` ;
157
157
const currentState = JSON . stringify ( this . state ) ;
158
158
fs . writeFile ( filePath , currentState , ( err ) => {
159
159
if ( err ) {
@@ -187,15 +187,15 @@ class Logger {
187
187
* @param newContainer
188
188
*/
189
189
async _handleContainer ( container ) { // jshint ignore:line
190
- const containerId = container . Id || container . id ;
191
- const containerStatus = container . Status || container . status ;
192
- const receivedLoggerId = _ . get ( container , 'Labels' , _ . get ( container , 'Actor.Attributes' ) ) [ 'io.codefresh.logger.id' ] ;
193
- const runCreationLogic = _ . get ( container , 'Labels' , _ . get ( container , 'Actor.Attributes' ) ) [ 'io.codefresh.runCreationLogic' ] ;
194
- const stepName = _ . get ( container , 'Labels' , _ . get ( container , 'Actor.Attributes' ) ) [ 'io.codefresh.logger.stepName' ] ;
190
+ const containerId = container . Id || container . id ;
191
+ const containerStatus = container . Status || container . status ;
192
+ const receivedLoggerId = _ . get ( container , 'Labels' , _ . get ( container , 'Actor.Attributes' ) ) [ 'io.codefresh.logger.id' ] ;
193
+ const runCreationLogic = _ . get ( container , 'Labels' , _ . get ( container , 'Actor.Attributes' ) ) [ 'io.codefresh.runCreationLogic' ] ;
194
+ const stepName = _ . get ( container , 'Labels' , _ . get ( container , 'Actor.Attributes' ) ) [ 'io.codefresh.logger.stepName' ] ;
195
195
const receivedLogSizeLimit = _ . get ( container ,
196
196
'Labels' ,
197
197
_ . get ( container , 'Actor.Attributes' ) ) [ 'io.codefresh.logger.logSizeLimit' ] ;
198
- const loggerStrategy = _ . get ( container , 'Labels' , _ . get ( container , 'Actor.Attributes' ) ) [ 'io.codefresh.logger.strategy' ] ;
198
+ const loggerStrategy = _ . get ( container , 'Labels' , _ . get ( container , 'Actor.Attributes' ) ) [ 'io.codefresh.logger.strategy' ] ;
199
199
200
200
if ( ! containerId ) {
201
201
logger . error ( `Not handling container because id is missing` ) ;
@@ -248,7 +248,7 @@ class Logger {
248
248
const logSizeLimit = receivedLogSizeLimit ? ( parseInt ( receivedLogSizeLimit , 10 ) * 1000000 ) : undefined ;
249
249
250
250
const containerInterface = this . docker . getContainer ( containerId ) ;
251
- const containerLogger = new ContainerLogger ( {
251
+ const containerLogger = new ContainerLogger ( {
252
252
containerId,
253
253
containerInterface,
254
254
stepLogger,
@@ -275,8 +275,8 @@ class Logger {
275
275
}
276
276
277
277
_updateMissingLogs ( ) {
278
- const resolvedCalls = _ . get ( this , 'state.logsStatus.resolvedCalls' , 0 ) ;
279
278
const writeCalls = _ . get ( this , 'state.logsStatus.writeCalls' , 0 ) ;
279
+ const resolvedCalls = _ . get ( this , 'state.logsStatus.resolvedCalls' , 0 ) ;
280
280
const rejectedCalls = _ . get ( this , 'state.logsStatus.rejectedCalls' , 0 ) ;
281
281
282
282
_ . set ( this , 'state.logsStatus.missingLogs' , writeCalls - resolvedCalls - rejectedCalls ) ;
0 commit comments