Resolved device list and IP addresses not working via osqueryi.
Now also returning last boottime by doing bootup time and math from current time
This commit is contained in:
@@ -9,7 +9,8 @@
|
||||
<UseWPF>true</UseWPF>
|
||||
<StartupObject>LD_SysInfo.App</StartupObject>
|
||||
<ApplicationIcon>Assets\LDShortcut.ico</ApplicationIcon>
|
||||
<OutputPath>C:\Users\Sonder\source\repos\psg-oversight-app\BuildDir\bin\Debug\net8.0-windows\</OutputPath>
|
||||
<OutputPath>C:\Users\Sonder\source\repos\psg-oversight-app\BuildDir\bin\Debug\</OutputPath>
|
||||
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
|
||||
<IncludeSatelliteAssembliesForPublish>false</IncludeSatelliteAssembliesForPublish>
|
||||
|
||||
<!-- 🔢 Version Info -->
|
||||
|
||||
@@ -142,10 +142,10 @@ namespace LD_SysInfo
|
||||
}
|
||||
|
||||
// ✅ Drives
|
||||
info.Drives = OsqueryService.Query("SELECT device, size, free_space, type FROM logical_drives;")
|
||||
info.Drives = OsqueryService.Query("SELECT device_id, size, free_space, type FROM logical_drives;")
|
||||
.Select(d => new DriveInfoSummary
|
||||
{
|
||||
Name = d.GetValueOrDefault("device"),
|
||||
Name = d.GetValueOrDefault("device_id"),
|
||||
TotalSizeGB = d.ContainsKey("size") && double.TryParse(d["size"], out double size)
|
||||
? Math.Round(size / (1024.0 * 1024.0 * 1024.0), 2) : 0,
|
||||
FreeSpaceGB = d.ContainsKey("free_space") && double.TryParse(d["free_space"], out double free)
|
||||
@@ -179,9 +179,9 @@ namespace LD_SysInfo
|
||||
.Where(ni => !string.IsNullOrEmpty(ni.IpAddress))
|
||||
.ToList();
|
||||
|
||||
// ✅ Last boot time
|
||||
info.LastBootTime = OsqueryService.Query("SELECT datetime(boot_time, 'unixepoch') AS last_boot FROM uptime;")
|
||||
.FirstOrDefault()?.GetValueOrDefault("last_boot");
|
||||
// ✅ Last boot time - calculate from current time minus uptime
|
||||
info.LastBootTime = OsqueryService.Query("SELECT datetime((SELECT CAST(unix_time AS INTEGER) FROM time) - total_seconds, 'unixepoch') as boot_time FROM uptime;")
|
||||
.FirstOrDefault()?.GetValueOrDefault("boot_time");
|
||||
|
||||
// ✅ Installed apps (user + system)
|
||||
info.InstalledApplications = OsqueryService.Query("SELECT name, version, publisher FROM programs;")
|
||||
|
||||
Reference in New Issue
Block a user