Skip to content

Commit

Permalink
Fixed file leaking. Heartbeat file is now closed by admin after being…
Browse files Browse the repository at this point in the history
… used
  • Loading branch information
tfreemanLucid committed Jun 23, 2021
1 parent 27b954d commit 1fa697b
Showing 1 changed file with 13 additions and 7 deletions.
20 changes: 13 additions & 7 deletions admin/app/com/lucidchart/piezo/admin/controllers/HealthCheck.scala
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,18 @@ class HealthCheck(configuration: Configuration, cc: ControllerComponents) extend
}

def areWorkersHealthy(): (Boolean, String) = {
val heartbeatFile = Source.fromFile(heartbeatFilename).getLines().toList
val heartbeatTimestamp = heartbeatFile(0)
val formatter = ISODateTimeFormat.dateTimeNoMillis().withZoneUTC()
val heartbeatTime = formatter.parseDateTime(heartbeatTimestamp)
val currentTime = new DateTime
val isTimestampRecent = Minutes.minutesBetween(heartbeatTime, currentTime).getMinutes < minutesBetweenBeats
(isTimestampRecent, formatter.print(heartbeatTime))
val heartbeatFile = Source.fromFile(heartbeatFilename)
try {
val heartbeatFileLines = heartbeatFile.getLines().toList
val heartbeatTimestamp = heartbeatFileLines(0)
val formatter = ISODateTimeFormat.dateTimeNoMillis().withZoneUTC()
val heartbeatTime = formatter.parseDateTime(heartbeatTimestamp)
val currentTime = new DateTime
val isTimestampRecent = Minutes.minutesBetween(heartbeatTime, currentTime).getMinutes < minutesBetweenBeats
(isTimestampRecent, formatter.print(heartbeatTime))
}
finally {
heartbeatFile.close()
}
}
}

0 comments on commit 1fa697b

Please sign in to comment.