DONT FAIL FOREVER ON 1 BLACKOUT FILE loser
parent
03565e4fbc
commit
eb12586a40
|
|
@ -115,47 +115,52 @@ func Run(ctx context.Context, args []string) error {
|
||||||
}
|
}
|
||||||
return nil
|
return nil
|
||||||
}(); err != nil {
|
}(); err != nil {
|
||||||
return err
|
log.Println("failed series", series, ":", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, cam := range cams {
|
for _, cam := range cams {
|
||||||
camMovementD := strings.ReplaceAll(cam, "record", "movement")
|
if err := func() error {
|
||||||
|
camMovementD := strings.ReplaceAll(cam, "record", "movement")
|
||||||
|
|
||||||
movementFiles, err := lsf(camMovementD)
|
movementFiles, err := lsf(camMovementD)
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
sort.Strings(movementFiles)
|
|
||||||
|
|
||||||
var sizeOfCamDMiB int64
|
|
||||||
for _, movementFile := range movementFiles {
|
|
||||||
stat, err := os.Stat(movementFile)
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
fileSizeMiB := stat.Size() / 1024 / 1024
|
sort.Strings(movementFiles)
|
||||||
sizeOfCamDMiB += fileSizeMiB
|
|
||||||
}
|
|
||||||
|
|
||||||
GiB100 := int64(100 * 1024)
|
var sizeOfCamDMiB int64
|
||||||
for sizeOfCamDMiB > GiB100 && len(movementFiles) > 0 {
|
for _, movementFile := range movementFiles {
|
||||||
oldestFile := movementFiles[0]
|
stat, err := os.Stat(movementFile)
|
||||||
|
if err != nil {
|
||||||
oldestFileStat, err := os.Stat(oldestFile)
|
return err
|
||||||
if err != nil {
|
}
|
||||||
return err
|
fileSizeMiB := stat.Size() / 1024 / 1024
|
||||||
}
|
sizeOfCamDMiB += fileSizeMiB
|
||||||
oldestFileSizeMiB := oldestFileStat.Size() / 1024 / 1024
|
|
||||||
|
|
||||||
log.Println("deleting old file", oldestFile)
|
|
||||||
if err := os.Remove(oldestFile); err != nil {
|
|
||||||
return err
|
|
||||||
}
|
}
|
||||||
|
|
||||||
sizeOfCamDMiB -= oldestFileSizeMiB
|
GiB100 := int64(100 * 1024)
|
||||||
movementFiles = movementFiles[1:]
|
for sizeOfCamDMiB > GiB100 && len(movementFiles) > 0 {
|
||||||
|
oldestFile := movementFiles[0]
|
||||||
|
|
||||||
|
oldestFileStat, err := os.Stat(oldestFile)
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
oldestFileSizeMiB := oldestFileStat.Size() / 1024 / 1024
|
||||||
|
|
||||||
|
log.Println("deleting old file", oldestFile)
|
||||||
|
if err := os.Remove(oldestFile); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
sizeOfCamDMiB -= oldestFileSizeMiB
|
||||||
|
movementFiles = movementFiles[1:]
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}(); err != nil {
|
||||||
|
log.Println("failed to cap size of cam", cam, " dir:", err)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue