Fixed ArgumentNullException in ContainerTracker.cs
Fixed crash (ArgumentNullException) caused by resources.BlkioStats.IoServiceBytesRecursive being null when other docker containers keep getting restarted.
This commit is contained in:
parent
adc3bef880
commit
384034d91f
1 changed files with 4 additions and 4 deletions
|
@ -187,16 +187,16 @@ namespace DockerExporter
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
var readEntries = resources.BlkioStats.IoServiceBytesRecursive
|
var readEntries = resources.BlkioStats.IoServiceBytesRecursive?
|
||||||
.Where(entry => entry.Op.Equals("read", StringComparison.InvariantCultureIgnoreCase))
|
.Where(entry => entry.Op.Equals("read", StringComparison.InvariantCultureIgnoreCase))
|
||||||
.ToArray();
|
.ToArray();
|
||||||
|
|
||||||
var writeEntries = resources.BlkioStats.IoServiceBytesRecursive
|
var writeEntries = resources.BlkioStats.IoServiceBytesRecursive?
|
||||||
.Where(entry => entry.Op.Equals("write", StringComparison.InvariantCultureIgnoreCase))
|
.Where(entry => entry.Op.Equals("write", StringComparison.InvariantCultureIgnoreCase))
|
||||||
.ToArray();
|
.ToArray();
|
||||||
|
|
||||||
var totalRead = readEntries.Any() ? readEntries.Sum(entry => (long)entry.Value) : 0;
|
var totalRead = readEntries == null ? 0 : readEntries.Any() ? readEntries.Sum(entry => (long)entry.Value) : 0;
|
||||||
var totalWrite = writeEntries.Any() ? writeEntries.Sum(entry => (long)entry.Value) : 0;
|
var totalWrite = writeEntries == null ? 0 : writeEntries.Any() ? writeEntries.Sum(entry => (long)entry.Value) : 0;
|
||||||
|
|
||||||
metrics.TotalDiskBytesRead.Set(totalRead);
|
metrics.TotalDiskBytesRead.Set(totalRead);
|
||||||
metrics.TotalDiskBytesWrite.Set(totalWrite);
|
metrics.TotalDiskBytesWrite.Set(totalWrite);
|
||||||
|
|
Loading…
Add table
Reference in a new issue