public static object WebServerJsonModel() { var obj = new { id = WebServerId.CreateFromPath(ManagementUnit.Current.ApplicationHostConfigPath).Uuid }; return(Core.Environment.Hal.Apply(Defines.Resource.Guid, obj)); }
public static object ToJsonModel() { var obj = new { name = "Microsoft Internet Information Services", id = WebServerId.CreateFromPath(ManagementUnit.Current.ApplicationHostConfigPath).Uuid, status = Enum.GetName(typeof(Status), GetStatus()).ToLower(), version = GetVersion() }; return(Core.Environment.Hal.Apply(Defines.Resource.Guid, obj)); }
public static object ToJsonModel(IWebServerVersion versionProvider) { Version version = versionProvider.Version; var obj = new { name = "Microsoft Internet Information Services", id = WebServerId.Create().Uuid, supports_sni = version != null && version >= new Version(8, 0), status = Enum.GetName(typeof(Status), GetStatus()).ToLower(), version = GetVersion() }; return(Core.Environment.Hal.Apply(Defines.Resource.Guid, obj)); }
public static object ToJsonModel(IWebServerSnapshot snapshot, Fields fields = null, bool full = true) { if (snapshot == null) { return(null); } if (fields == null) { fields = Fields.All; } dynamic obj = new ExpandoObject(); // // id obj.id = WebServerId.Create().Uuid; // // network if (fields.Exists("network")) { obj.network = new { bytes_sent_sec = snapshot.BytesSentSec, bytes_recv_sec = snapshot.BytesRecvSec, connection_attempts_sec = snapshot.ConnectionAttemptsSec, total_bytes_sent = snapshot.TotalBytesSent, total_bytes_recv = snapshot.TotalBytesRecv, total_connection_attempts = snapshot.TotalConnectionAttempts, current_connections = snapshot.CurrentConnections }; } // // requests if (fields.Exists("requests")) { obj.requests = new { active = snapshot.ActiveRequests, per_sec = snapshot.RequestsSec, total = snapshot.TotalRequests }; } // // memory if (fields.Exists("memory")) { obj.memory = new { handles = snapshot.HandleCount, private_bytes = snapshot.PrivateBytes, private_working_set = snapshot.PrivateWorkingSet, system_in_use = snapshot.SystemMemoryInUse, installed = snapshot.TotalInstalledMemory }; } // // cpu if (fields.Exists("cpu")) { obj.cpu = new { threads = snapshot.ThreadCount, processes = snapshot.ProcessCount, percent_usage = snapshot.PercentCpuTime, system_percent_usage = snapshot.SystemPercentCpuTime }; } // // disk if (fields.Exists("disk")) { obj.disk = new { io_write_operations_sec = snapshot.IOWriteSec, io_read_operations_sec = snapshot.IOReadSec, page_faults_sec = snapshot.PageFaultsSec }; } // // cache if (fields.Exists("cache")) { obj.cache = new { file_cache_count = snapshot.CurrentFilesCached, file_cache_memory_usage = snapshot.FileCacheMemoryUsage, file_cache_hits = snapshot.FileCacheHits, file_cache_misses = snapshot.FileCacheMisses, total_files_cached = snapshot.TotalFilesCached, output_cache_count = snapshot.OutputCacheCurrentItems, output_cache_memory_usage = snapshot.OutputCacheMemoryUsage, output_cache_hits = snapshot.OutputCacheTotalHits, output_cache_misses = snapshot.OutputCacheTotalMisses, uri_cache_count = snapshot.CurrentUrisCached, uri_cache_hits = snapshot.UriCacheHits, uri_cache_misses = snapshot.UriCacheMisses, total_uris_cached = snapshot.TotalUrisCached }; } return(Core.Environment.Hal.Apply(Defines.WebServerMonitoringResource.Guid, obj)); }