/// <summary> /// 根据配置创建用户账户,缴费角色 /// </summary> /// <param name="monitoringConfig"></param> /// <param name="node"></param> public void CreateAcountByConfig(MonitoringConfig node) { //定价或补贴需要缴费账户 if (node.ConfigTypeId == DictionaryCache.MonitoringConfigTypePrice.Id || node.ConfigTypeId == DictionaryCache.MonitoringConfigTypeSubsidy.Id) { //是否已经存在缴费账户 int count = 0; //为当前对象开启缴费账户 CategoryDictionary category = CategoryDictionary.Building; if (node.TargetTypeId == DictionaryCache.ConfigToOrg.Id) { category = CategoryDictionary.Organization; count = userBLL.Count(o => o.Roles.Any(c => c.Id == RoleCache.PayMentRoleId) && o.Organizations.Any(c => c.Id == node.TargetId)); } else { count = userBLL.Count(o => o.Roles.Any(c => c.Id == RoleCache.PayMentRoleId) && o.Buildings.Any(c => c.Id == node.TargetId)); } if (count > 0) { return; } string error = ""; List <UserAccountData> userAccounts; CreateAccounts(category, true, new List <string> { node.TargetId + "" }, out error, out userAccounts); } }
public SkylakeClientArb() { architectureName = "Skylake Client System Agent"; lastUncoreClockCount = 0; monitoringConfigs = new MonitoringConfig[1]; monitoringConfigs[0] = new MCRequests(this); }
public ZenL3Cache() { architectureName = "Zen L3"; ccxSampleThreads = new Dictionary <int, int>(); allCcxThreads = new Dictionary <int, List <int> >(); for (int threadIdx = 0; threadIdx < GetThreadCount(); threadIdx++) { int ccxIdx = GetCcxId(threadIdx); ccxSampleThreads[ccxIdx] = threadIdx; List <int> ccxThreads; if (!allCcxThreads.TryGetValue(ccxIdx, out ccxThreads)) { ccxThreads = new List <int>(); allCcxThreads.Add(ccxIdx, ccxThreads); } ccxThreads.Add(threadIdx); } monitoringConfigs = new MonitoringConfig[1]; monitoringConfigs[0] = new HitRateLatencyConfig(this); ccxCounterData = new L3CounterData[ccxSampleThreads.Count()]; ccxTotals = new L3CounterData(); }
public FileManager(MonitoringConfig config, ILogger logger, ShareFolder shareFolder, IMetricServer metricServer) { _shareFolder = shareFolder; _config = config; _logger = logger; _metricServer = metricServer; }
/// <summary> /// Initializes a new instance of the <see cref="MonitoringTask"/> from the provided <see cref="MonitoringConfig"/>. /// </summary> /// <param name="configuration">The current monitoring configuration.</param> public MonitoringTask(MonitoringConfig configuration) { if (configuration == null) throw new ArgumentNullException("configuration"); _logger = LogManager.GetCurrentClassLogger(); _batteryWrapper = new BatteryWrapper(configuration.MinimumLevel, configuration.MinimumRunTime); _checkInterval = configuration.CheckInterval; }
public SandyBridgePCU() { architectureName = "Sandy Bridge E Power Control Unit"; monitoringConfigs = new MonitoringConfig[3]; monitoringConfigs[0] = new VoltageTransitions(this); monitoringConfigs[1] = new Limits(this); monitoringConfigs[2] = new ChangeAndPhaseShedding(this); }
public HaswellClientArb() { architectureName = "Haswell Client System Agent"; lastUncoreClockCount = 0; monitoringConfigs = new MonitoringConfig[2]; monitoringConfigs[0] = new MCRequests(this); monitoringConfigs[1] = new CoherencyRequests(this); }
public Zen2DataFabric() { architectureName = "Zen 2 Data Fabric"; monitoringConfigs = new MonitoringConfig[4]; monitoringConfigs[0] = new DramBwConfig(this); monitoringConfigs[1] = new DramBw1Config(this); monitoringConfigs[2] = new OutboundDataConfig(this); monitoringConfigs[3] = new BwTestConfig(this); }
public DynamicHostManager(MonitoringConfig config, INetworkScanner scanner, IScheduler scheduler) { Guard.NotNull(() => config, config); Guard.NotNull(() => scanner, scanner); Guard.NotNull(() => scheduler, scheduler); this.scanner = scanner; this.config = config; subscription = Observable.FromAsync(ScanFtp, scheduler).Delay(TimeSpan.FromSeconds(10), scheduler).Repeat().SubscribeOn(scheduler).Subscribe(); }
public MonitoringInstance(IScheduler scheduler, MonitoringConfig configuration, ISourceFactory downloaderFactory, IDeleteArchiving archiving) { Guard.NotNull(() => configuration, configuration); Guard.NotNull(() => scheduler, scheduler); Guard.NotNull(() => downloaderFactory, downloaderFactory); Guard.NotNull(() => archiving, archiving); this.configuration = configuration; this.archiving = archiving; this.scheduler = scheduler; this.downloaderFactory = downloaderFactory; }
public Zen1() { monitoringConfigs = new MonitoringConfig[6]; monitoringConfigs[0] = new BpuMonitoringConfig(this); monitoringConfigs[1] = new DCMonitoringConfig(this); monitoringConfigs[2] = new FPUPipeUtil(this); monitoringConfigs[3] = new Dispatch1(this); monitoringConfigs[4] = new Dispatch2(this); monitoringConfigs[5] = new OpCache(this); architectureName = "Zen 1"; }
public void SetUp() { scanConfig = new MonitoringConfig(); scanConfig.YiFtp = new FtpConfig(); scanConfig.YiFtp.FileMask = "Test"; scanConfig.Output = new OutputConfig(); scanConfig.Output.Out = "Out"; mockPredicate = new Mock <IPredicate>(); scanConfig.Known = new PredefinedCameraConfig(); manager = new StaticHostManager(scanConfig.Known); instance = CreateFactory(); }
public SourceFactory(MonitoringConfig config, IPredicate filePredicate) { Guard.NotNull(() => config, config); Guard.NotNull(() => filePredicate, filePredicate); this.config = config; this.filePredicate = filePredicate; destination = ConstructDestination(); if (config.Server != null) { fixedDownloaders.Add(new FileDownloader(config.Server, destination, filePredicate)); } }
public MainSheduler(MonitoringConfig config, ILogger logger, IConfiguration configuration, Gauge counterException, IMetricServer metricServer = null) { Logger = logger; MetricServer = metricServer; CounterException = counterException; MonitoringConfig = config; AppConfiguration = configuration; var registry = new Registry(); registry.Schedule <FileMonitoringJob>().NonReentrant().ToRunEvery(config.FileMonitoringTimeout).Seconds(); registry.Schedule <ApiIntegrationJob>().NonReentrant().ToRunEvery(config.ApiIntegrationTimeout).Seconds(); JobManager.Initialize(registry); }
static void Main(string[] args) { var configuration = new ConfigurationBuilder() .AddJsonFile("appsettings.json") .Build(); Log.Logger = new LoggerConfiguration() .ReadFrom.Configuration(configuration) .CreateLogger(); var serviceCollection = new ServiceCollection(); ConfigureServices(serviceCollection); var serviceProvider = serviceCollection.BuildServiceProvider(); var logger = serviceProvider.GetService <ILogger <Program> >(); var monitoringConfig = new MonitoringConfig(); configuration.GetSection("MonitoringConfig").Bind(monitoringConfig); var prometheus = new PrometheusConfig(); configuration.GetSection(Constants.DefaultMetricsServerName).Bind(prometheus); MetricPusher metricServer = null; if (!string.IsNullOrEmpty(prometheus.Instance) && !string.IsNullOrEmpty(prometheus.Endpoint)) { metricServer = new MetricPusher(endpoint: prometheus.Endpoint, job: "FileMonitoring", instance: prometheus.Instance); metricServer.Start(); } logger.LogInformation("Приложение запущено"); if (FailedMigrateDb.CountExceptions(() => MigrateDb(configuration, logger))) { //запуск планировщика задач var mainSheduler = new MainSheduler(monitoringConfig, logger, configuration, JobsGaugeException, metricServer); logger.LogInformation("Для завершения работы нажмите клавишу Q"); var stopKey = new ConsoleKeyInfo(); while (stopKey.Key != ConsoleKey.Q) { stopKey = Console.ReadKey(); } mainSheduler.Dispose(); metricServer?.Stop(); } logger.LogInformation("Приложение завершило работу"); }
public void SetUp() { scheduler = new TestScheduler(); monitoringConfig = new MonitoringConfig(); monitoringConfig.Scan = 1; monitoringConfig.Known = new PredefinedCameraConfig(); monitoringConfig.Output = new OutputConfig(); archiving = new Mock <IDeleteArchiving>(); mockDestinationFactory = new Mock <ISourceFactory>(); ftpDownloader = new Mock <IDownloader>(); mockDestinationFactory.Setup(item => item.GetSources(It.IsAny <IHostManager>())) .Returns(new[] { ftpDownloader.Object }); instance = CreateMonitoringInstance(); }
public SkylakeClientL3() { ulong cboConfig; architectureName = "Skylake Client L3"; // intel developer manual table 2-30 says bits 0-3 encode number of C-Box // "subtract one to determine number of CBo units" Ring0.ReadMsr(MSR_UNC_CBO_CONFIG, out cboConfig); CboCount = (int)((cboConfig & 0x7) - 1); cboData = new NormalizedCboCounterData[CboCount]; monitoringConfigs = new MonitoringConfig[1]; monitoringConfigs[0] = new HitrateConfig(this); }
public SandyBridgeEL3() { architectureName = "Sandy Bridge E L3 Cache"; cboTotals = new NormalizedCboCounterData(); cboData = new NormalizedCboCounterData[CboCount]; monitoringConfigs = new MonitoringConfig[8]; monitoringConfigs[0] = new HitsBlConfig(this); monitoringConfigs[1] = new RxRConfig(this); monitoringConfigs[2] = new DataReadLatency(this); monitoringConfigs[3] = new MissesAdConfig(this); monitoringConfigs[4] = new LLCVictimsAndIvRing(this); monitoringConfigs[5] = new BouncesAndAkRing(this); monitoringConfigs[6] = new DataReadMissLatency(this); monitoringConfigs[7] = new ToR(this); }
public Piledriver() { monitoringConfigs = new MonitoringConfig[11]; monitoringConfigs[0] = new BpuMonitoringConfig(this); monitoringConfigs[1] = new IFetch(this); monitoringConfigs[2] = new DataCache(this); monitoringConfigs[3] = new DataCache1(this); monitoringConfigs[4] = new L2Cache(this); monitoringConfigs[5] = new DispatchStall(this); monitoringConfigs[6] = new DispatchStall1(this); monitoringConfigs[7] = new DispatchStallFP(this); monitoringConfigs[8] = new DispatchStallMisc(this); monitoringConfigs[9] = new DTLB(this); monitoringConfigs[10] = new FPU(this); architectureName = "Piledriver"; }
public static void Main(string[] args) { try { var directory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); if (!File.Exists(Path.Combine(directory, "service.json"))) { log.Error("Configuration file service.json not found"); return; } MonitoringConfig config = JsonConvert.DeserializeObject <MonitoringConfig>(File.ReadAllText(Path.Combine(directory, "service.json"))); if (!config.Validate()) { log.Error("Invalid configuration"); return; } NetworkScanner scanner = new NetworkScanner(TaskPoolScheduler.Default); log.Info("Starting {0} version utility...", Assembly.GetExecutingAssembly().GetName().Version); foreach (var address in scanner.GetLocalIPAddress()) { log.Info("Starting on local IP: [{0}]", address); } List <Command> commandsList = new List <Command>(); commandsList.Add(new MonitorCommand(config)); commandsList.Add(new DownloadCommand(config)); var commands = commandsList.ToDictionary(item => item.Name, item => item, StringComparer.OrdinalIgnoreCase); if (args.Length == 0 || !commands.TryGetValue(args[0], out var command)) { log.Info("Starting as service"); ServiceStarter serviceStarter = new ServiceStarter(); serviceStarter.StartService(config); return; } command.ParseArguments(args.Skip(1)); command.Execute(); } catch (Exception ex) { log.Error(ex); } }
public Zen3() { monitoringConfigs = new MonitoringConfig[12]; monitoringConfigs[0] = new BpuMonitoringConfig(this); monitoringConfigs[1] = new FetchConfig(this); monitoringConfigs[2] = new DCFillConfig(this); monitoringConfigs[3] = new HwPrefetchConfig(this); monitoringConfigs[4] = new SwPrefetchConfig(this); monitoringConfigs[5] = new FlopsConfig(this); monitoringConfigs[6] = new LocksConfig(this); monitoringConfigs[7] = new DispatchStallConfig(this); monitoringConfigs[8] = new DispatchStallConfig1(this); monitoringConfigs[9] = new L2Config(this); monitoringConfigs[10] = new TopDown(this); monitoringConfigs[11] = new PmcMonitoringConfig(this); architectureName = "Zen 3"; }
public HaswellClientL3() { ulong cboConfig; architectureName = "Haswell Client L3"; // intel developer manual table 2-30 syas bits 0-3 encode number of C-Box // "derive value by -1" Ring0.ReadMsr(MSR_UNC_CBO_CONFIG, out cboConfig); CboCount = (int)((cboConfig & 0x7) - 1); cboData = new NormalizedCboCounterData[CboCount]; monitoringConfigs = new MonitoringConfig[3]; monitoringConfigs[0] = new HitrateConfig(this); monitoringConfigs[1] = new SnoopHitConfig(this); monitoringConfigs[2] = new SnoopInvalidateConfig(this); }
public void StartService(MonitoringConfig config) { Guard.NotNull(() => config, config); var predicate = config.Output.All ? new NullPredicate() : (IPredicate) new NewFilesPredicate(); SourceFactory factory = new SourceFactory(config, predicate); HostFactory.Run( x => { x.Service <MonitoringInstance>( s => { s.ConstructUsing(name => new MonitoringInstance(TaskPoolScheduler.Default, config, factory, new DeleteArchiving())); s.WhenStarted(tc => tc.Start()); s.WhenStopped(tc => tc.Stop()); }); x.RunAsLocalSystem(); x.SetDescription("Camera Monitoring Service"); x.SetDisplayName("YiScanner Service"); x.SetServiceName("YiScanner"); }); }
public async Task <bool> UpdateOneAgentOnAHostMonitoringConfigAsync(string id, MonitoringConfig body, CancellationToken cancellationToken = default) { var response = await GetOneAgentOnAHostConfigUrl(id) .PutJsonAsync(body, cancellationToken) .ConfigureAwait(false); return(response.IsSuccessStatusCode); }
/// <summary> /// Starts background monitoring thread that periodically updates monitoring list view /// with new results /// </summary> /// <param name="configId">Monitoring config to use</param> /// <param name="listView">List view to update</param> /// <param name="cancelToken">Cancellation token - since perf counters are limited, /// this thread has to be cancelled before one for a new config is started</param> public void MonitoringThread(int configId, ListView listView, CancellationToken cancelToken) { CultureInfo ci = new CultureInfo("en-US"); MonitoringConfig selectedConfig = monitoringConfigs[configId]; lastUpdateTimers = null; if (cancelToken.IsCancellationRequested) { return; } selectedConfig.Initialize(); SafeSetMonitoringListViewColumns cd = new SafeSetMonitoringListViewColumns(SetMonitoringListViewColumns); listView.Invoke(cd, selectedConfig.GetColumns(), listView); while (!cancelToken.IsCancellationRequested) { MonitoringUpdateResults updateResults = selectedConfig.Update(); // update list box with results (and we're always on a different thread) SafeSetMonitoringListViewItems d = new SafeSetMonitoringListViewItems(SetMonitoringListView); listView.Invoke(d, updateResults, listView); // log to file, if we're doing that lock (logFileLock) { if (!string.IsNullOrEmpty(logFilePath)) { // log raw counter values if available. otherwise log metrics // eventually I want to move everything over to log raw counter values bool first; if (updateResults.overallCounterValues != null) { if (!logFileHeadersWritten) { string csvHeader = ""; first = true; foreach (Tuple <string, float> counterValue in updateResults.overallCounterValues) { if (first) { csvHeader += counterValue.Item1; } else { csvHeader += "," + counterValue.Item1; } first = false; } csvHeader += "\n"; File.AppendAllText(logFilePath, csvHeader); logFileHeadersWritten = true; } string csvLine = ""; first = true; foreach (Tuple <string, float> counterValue in updateResults.overallCounterValues) { if (first) { csvLine += counterValue.Item2.ToString("G", ci); } else { csvLine += "," + counterValue.Item2.ToString("G", ci); } first = false; } csvLine += "\n"; File.AppendAllText(logFilePath, csvLine); } else if (updateResults.overallMetrics != null) { if (!logFileHeadersWritten) { string csvHeader = ""; first = true; foreach (string columnHeader in selectedConfig.GetColumns()) { if (first) { csvHeader += columnHeader; } else { csvHeader += "," + columnHeader; } first = false; } csvHeader += "\n"; File.AppendAllText(logFilePath, csvHeader); logFileHeadersWritten = true; } string csvLine = ""; first = true; foreach (string value in updateResults.overallMetrics) { if (first) { csvLine += value; } else { csvLine += "," + value; } first = false; } csvLine += "\n"; File.AppendAllText(logFilePath, csvLine); } } } Thread.Sleep(1000); } }
public DownloadCommand(MonitoringConfig config) : base(config) { }
protected BaseCommand(MonitoringConfig config) { Guard.NotNull(() => config, config); Config = config; }
public MonitorCommand(MonitoringConfig config) : base(config) { }
public static MonitoringConfigData ToViewData(this MonitoringConfig node, CategoryDictionary suffix = CategoryDictionary.None) { MonitoringConfigBLL MonitoringConfigBLL = new MonitoringConfigBLL(); if (node == null) { return(null); } var model = new MonitoringConfigData() { Id = node.Id, Name = node.Name, Description = node.Description, TargetTypeId = node.TargetTypeId, TargetId = node.TargetId, EnergyCategoryId = node.EnergyCategoryId, ConfigTypeId = node.ConfigTypeId, WayId = node.WayId, UnitValue = node.UnitValue, LowerLimit = node.LowerLimit, UpperLimit = node.UpperLimit, Value = node.Value, ValidStartTime = node.ValidStartTime, ValidEndTime = node.ValidEndTime, Priority = node.Priority, Enabled = node.Enabled, StartTime = node.StartTime, EndTime = node.EndTime, RegeneratorId = node.RegeneratorId, RegeneratorName = node.RegeneratorName, UpdatingTime = node.UpdatingTime, ParameterId = node.ParameterId, TemplateId = node.TemplateId, OverTimeDate = node.OverTimeDate, CycleTime = node.CycleTime, CycleTypeId = node.CycleTypeId, AlarmLevelId = node.AlarmLevelId, IsvalidNextCycle = node.IsvalidNextCycle, ValidTypeId = node.ValidTypeId, ValidType = node.ValidTypeId == null ? null : node.ValidType == null?DictionaryCache.Get()[(int)node.ValidTypeId].ToViewData() : node.ValidType.ToViewData(), AlarmLevel = node.AlarmLevelId == null ? null : node.AlarmLevel == null?DictionaryCache.Get()[(int)node.AlarmLevelId].ToViewData() : node.AlarmLevel.ToViewData(), ConfigType = node.ConfigType == null?DictionaryCache.Get()[(int)node.ConfigTypeId].ToViewData() : node.ConfigType.ToViewData(), CycleType = node.CycleTypeId == null ? null : node.CycleType == null?DictionaryCache.Get()[(int)node.CycleTypeId].ToViewData() : node.CycleType.ToViewData(), EnergyCategory = node.EnergyCategoryId == null ? null : node.EnergyCategory == null?DictionaryCache.Get()[(int)node.EnergyCategoryId].ToViewData() : node.EnergyCategory.ToViewData(), TargetType = node.TargetType == null?DictionaryCache.Get()[(int)node.TargetTypeId].ToViewData() : node.TargetType.ToViewData(), Way = node.WayId == null ? null : node.Way == null?DictionaryCache.Get()[(int)node.WayId].ToViewData() : node.Way.ToViewData(), TemplateName = node.TemplateId.HasValue ? null : MonitoringConfigBLL.Filter(o => o.TemplateId == node.TemplateId).Take(1).Select(o => o.Name).ToList()[0] }; //模板联动动作 if (node.Value.HasValue) { try { int actionId = Convert.ToInt32(node.Value); model.ActionName = DictionaryCache.Get()[actionId].ChineseName; } catch { } } if (node.ConfigCycleSettings != null) { ConfigCycleSettingBLL ConfigCycleSettingBLL = new ConfigCycleSettingBLL(); int id = model.Id; model.ConfigCycleSettings = ConfigCycleSettingBLL.Filter(o => o.ConfigId == id).ToViewList(); } if (node.CycleTypeId != null) { if (model.CycleType.ChineseName == "每年") { //model.CycleTimeName = "按年"; //model.CycleTimeDesc = Convert.ToDateTime(node.CycleTime).Year + "年"; model.CycleTimeName = model.CycleType.ChineseName; model.CycleTimeDesc = Convert.ToDateTime(node.CycleTime).Month + "月" + Convert.ToDateTime(node.CycleTime).Day + "日" + Convert.ToDateTime(node.CycleTime).Hour + "时"; } else if (model.CycleType.ChineseName == "每月") { model.CycleTimeName = model.CycleType.ChineseName; model.CycleTimeDesc = Convert.ToDateTime(node.CycleTime).Day + "日" + Convert.ToDateTime(node.CycleTime).Hour + "时"; //model.CycleTimeName = model.CycleType.ChineseName; //model.CycleTimeDesc = Convert.ToDateTime(node.CycleTime).Month + "月"+Convert.ToDateTime(node.CycleTime).Day + "日"+Convert.ToDateTime(node.CycleTime).Hour + "时"; } else if (model.CycleType.ChineseName == "每周") { model.CycleTimeName = model.CycleType.ChineseName; model.CycleTimeDesc = "第" + Convert.ToDateTime(node.CycleTime).DayOfWeek + "日" + Convert.ToDateTime(node.CycleTime).Hour + "时"; //model.CycleTimeName = "每周"; //model.CycleTimeDesc = "第" + Convert.ToDateTime(node.CycleTime).DayOfWeek + "日"; } else if (model.CycleType.ChineseName == "每日") { model.CycleTimeName = model.CycleType.ChineseName; model.CycleTimeDesc = Convert.ToDateTime(node.CycleTime).Hour + "时"; //model.CycleTimeName = "每月"; //model.CycleTimeDesc = "第" + Convert.ToDateTime(node.CycleTime).Day + "日"; } else if (model.CycleType.ChineseName == "每小时") { model.CycleTimeName = model.CycleType.ChineseName; //model.CycleTimeName = "每天"; //model.CycleTimeDesc = "第" + Convert.ToDateTime(node.CycleTime).Year + "时"; } } if (node.ValidTypeId != null) { if (model.ValidType.ChineseName == "每年") { model.ValidTypeDesc = "检测"; model.ValidTypeDesc = model.ValidTypeDesc + Convert.ToDateTime(model.ValidStartTime).Year; if (Convert.ToDateTime(model.ValidStartTime).Year != Convert.ToDateTime(model.ValidEndTime).Year) { model.ValidTypeDesc = model.ValidTypeDesc + "至" + Convert.ToDateTime(model.ValidEndTime).Year; } model.ValidTypeDesc = model.ValidTypeDesc + "年数据"; } else if (model.ValidType.ChineseName == "每月") { model.ValidTypeDesc = "每年检测"; model.ValidTypeDesc = model.ValidTypeDesc + Convert.ToDateTime(model.ValidStartTime).Month; if (Convert.ToDateTime(model.ValidStartTime).Month != Convert.ToDateTime(model.ValidEndTime).Month) { model.ValidTypeDesc = model.ValidTypeDesc + "至" + Convert.ToDateTime(model.ValidEndTime).Month; } model.ValidTypeDesc = model.ValidTypeDesc + "月数据"; } else if (model.ValidType.ChineseName == "每周") { model.ValidTypeDesc = "每周检测周"; model.ValidTypeDesc = model.ValidTypeDesc + Convert.ToDateTime(model.ValidStartTime).DayOfWeek; if (Convert.ToDateTime(model.ValidStartTime).DayOfWeek != Convert.ToDateTime(model.ValidEndTime).DayOfWeek) { model.ValidTypeDesc = model.ValidTypeDesc + "至" + Convert.ToDateTime(model.ValidEndTime).DayOfWeek; } model.ValidTypeDesc = model.ValidTypeDesc + "数据"; } else if (model.ValidType.ChineseName == "每日") { model.ValidTypeDesc = "每月检测第"; model.ValidTypeDesc = model.ValidTypeDesc + Convert.ToDateTime(model.ValidStartTime).Day; if (Convert.ToDateTime(model.ValidStartTime).Day != Convert.ToDateTime(model.ValidEndTime).Day) { model.ValidTypeDesc = model.ValidTypeDesc + "至" + Convert.ToDateTime(model.ValidEndTime).Day; } model.ValidTypeDesc = model.ValidTypeDesc + "日数据"; } else if (model.ValidType.ChineseName == "每小时") { model.ValidTypeDesc = "每天检测第"; model.ValidTypeDesc = model.ValidTypeDesc + Convert.ToDateTime(model.ValidStartTime).Hour; if (Convert.ToDateTime(model.ValidStartTime).Hour != Convert.ToDateTime(model.ValidEndTime).Hour) { model.ValidTypeDesc = model.ValidTypeDesc + "至" + Convert.ToDateTime(model.ValidEndTime).Hour; } model.ValidTypeDesc = model.ValidTypeDesc + "时数据"; } } if (node.ParameterId != null && (suffix & CategoryDictionary.Parameter) == CategoryDictionary.Parameter) { if (node.Parameter != null) { model.Parameter = node.Parameter.ToViewData(); } else { ParameterBLL parameterBLL = new ParameterBLL(); model.Parameter = parameterBLL.Find(node.ParameterId).ToViewData(); } } //string TargetTypeStr = node.TargetType == null ? DictionaryCache.Get()[node.TargetTypeId].Description : node.TargetType.Description; //if (TargetTypeStr != null) //{ // ViewMeterFullInfoBLL meterBLL = new ViewMeterFullInfoBLL(); // BuildingBLL buildingBLL = new BuildingBLL(); // OrganizationBLL organizationBLL = new OrganizationBLL(); // BrandBLL brandBLL = new BrandBLL(); // MessageBLL messageBLL = new MessageBLL(); // int id = -1; // if (model.TargetId != null) // { // id=model.TargetId; // if (TargetTypeStr.ToLower() == "meter") // model.Target = meterBLL.Find(id).ToViewData(); // else if (TargetTypeStr.ToLower() == "building") // model.Target = buildingBLL.Find(id).ToViewData(); // else if (TargetTypeStr.ToLower() == "organization") // model.Target = organizationBLL.Find(id).ToViewData(); // else if (TargetTypeStr.ToLower() == "brand") // model.Target = brandBLL.Find(id).ToViewData(); // else if (TargetTypeStr.ToLower() == "message") // model.Target = messageBLL.Find(id).ToViewData(); // } //} return(model); }
public ApiClient(MonitoringConfig config, ILogger logger, IMetricServer metricServer) { _metricServer = metricServer; _config = config; _logger = logger; }
public Zen() { monitoringConfigs = new MonitoringConfig[1]; monitoringConfigs[0] = new BpuMonitoringConfig(this); architectureName = "Zen 1"; }