From 2e780ab34871dd396a852b26909b976c5b951798 Mon Sep 17 00:00:00 2001 From: John Cardinal Date: Fri, 29 May 2020 14:29:36 +0000 Subject: [PATCH] --- .../generator/CoreJobMetricsSnapshot.cs | 4 +++ server/AyaNova/util/FileUtil.cs | 30 +++++++++++++++++-- 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/server/AyaNova/generator/CoreJobMetricsSnapshot.cs b/server/AyaNova/generator/CoreJobMetricsSnapshot.cs index d977b100..4a16b84b 100644 --- a/server/AyaNova/generator/CoreJobMetricsSnapshot.cs +++ b/server/AyaNova/generator/CoreJobMetricsSnapshot.cs @@ -146,6 +146,10 @@ namespace AyaNova.Biz //FILES ON DISK var UtilFilesInfo = FileUtil.GetUtilityFolderSizeInfo(); var AttachmentFilesInfo = FileUtil.GetAttachmentFolderSizeInfo(); + +//Available space + + using (AyContext ct = ServiceProviderProvider.DBContext) { //write to db diff --git a/server/AyaNova/util/FileUtil.cs b/server/AyaNova/util/FileUtil.cs index 9e131343..43e712e2 100644 --- a/server/AyaNova/util/FileUtil.cs +++ b/server/AyaNova/util/FileUtil.cs @@ -180,7 +180,7 @@ namespace AyaNova.Util DateTime LastBackup = DateTime.MinValue; var BackupPath = UtilityFilesFolder; foreach (string file in Directory.EnumerateFiles(UtilityFilesFolder, "db-*.backup")) - { + { var ThisFileTime = File.GetCreationTimeUtc(file); if (ThisFileTime > LastBackup) { @@ -260,7 +260,20 @@ namespace AyaNova.Util } + internal static long UtilityFilesDriveAvailableSpace() + { + try + { + return new System.IO.DriveInfo(Path.GetPathRoot(UtilityFilesFolder)).AvailableFreeSpace; + } + catch (Exception ex) + { + ILogger log = AyaNova.Util.ApplicationLogging.CreateLogger("FileUtil::UtilityFilesDriveAvailableSpace"); + log.LogError(ex, "FileUtil::UtilityFilesDriveAvailableSpace error getting available space"); + return 0; + } + } #endregion Utility file handling @@ -505,7 +518,7 @@ namespace AyaNova.Util } - internal static void BackupAttachments(string demandFileNamePrepend,ILogger log = null) + internal static void BackupAttachments(string demandFileNamePrepend, ILogger log = null) { try { @@ -524,7 +537,20 @@ namespace AyaNova.Util } } + internal static long AttachmentFilesDriveAvailableSpace() + { + try + { + return new System.IO.DriveInfo(Path.GetPathRoot(UserFilesFolder)).AvailableFreeSpace; + } + catch (Exception ex) + { + ILogger log = AyaNova.Util.ApplicationLogging.CreateLogger("FileUtil::AttachmentFilesDriveAvailableSpace"); + log.LogError(ex, "FileUtil::AttachmentFilesDriveAvailableSpace error getting available space"); + return 0; + } + } #endregion attachment stuff #region General utilities