Пример #1
0
 private void HeartBeatDead(HeartBeatEvent handler)
 {
     if (heartBeatDeadEvent != null)
     {
         heartBeatDeadEvent();
     }
 }
Пример #2
0
        private void OnTimerTick(object state)
        {
            if (!_enabled)
            {
                return;
            }

            try
            {
                // Publish a heartbeat for this service.
                var heartBeatEvent = new HeartBeatEvent
                {
                    IntervalSeconds = TimerIntervalSeconds,
                    Server          = _machineName,
                    Service         = "Media",
                    Time            = DateTime.UtcNow,
                    MachineInfo     = new MachineInfo(),
                    ProcessInfo     = new ProcessInfo(),
                    SoftwareVersion = _version,
                    IsMaster        = false,
                };
                _bus.PublishAsync(heartBeatEvent);
            }
            catch (Exception ex)
            {
                Logger.LogException(ex, "Error publishing heartbeat. Is the RabbitMQ service available?");
            }
        }
        private void OnTimerTick(object state)
        {
            if (!_enabled)
            {
                return;
            }

            ProcessInfo processInfo = GetProcessInfo();

            try
            {
                // Publish a heartbeat for this service.
                var heartBeatEvent = new HeartBeatEvent
                {
                    IntervalSeconds  = TimerIntervalSeconds,
                    Server           = _serverSettings.ServerName,
                    Service          = _serverSettings.ServiceName,
                    SoftwareVersion  = _serverSettings.Version,
                    Time             = DateTime.UtcNow,
                    IsMaster         = _serverSettings.IsPrimary,
                    ProcessInfo      = processInfo,
                    MachineInfo      = new MachineInfo(),
                    MetaData         = "Delay (ms): " + RawStreamMillisBehindLatest,
                    RecordsProcessed = new List <RecordsProcessed>
                    {
                        new RecordsProcessed {
                            Name = "RawStreamMillisBehindLatest", Value = Convert.ToInt32(RawStreamMillisBehindLatest)
                        },
                        new RecordsProcessed {
                            Name = "RawRecordsProcessed", Value = RawRecordsProcessed
                        },

                        new RecordsProcessed {
                            Name = "ProcessedStreamMillisBehindLatest", Value = Convert.ToInt32(ProcessedStreamMillisBehindLatest)
                        },
                        new RecordsProcessed {
                            Name = "ProcessedMeasurementsProcesssed", Value = ProcessedMeasurementsProcessed
                        },

                        new RecordsProcessed {
                            Name = "MonthlyProcessedStreamMillisBehindLatest", Value = Convert.ToInt32(MonthlyProcessedStreamMillisBehindLatest)
                        },
                        new RecordsProcessed {
                            Name = "MonthlyProcessedMeasurementsProcesssed", Value = MonthlyProcessedMeasurementsProcessed
                        },


                        new RecordsProcessed {
                            Name = "DynamoRecordsProcessed", Value = _dynamoDBRecordsSaved
                        },
                        new RecordsProcessed {
                            Name = "DynamoMonthlyRecordsProcessed", Value = _dynamoDBMonthlyRecordsSaved
                        },
                    }
                };
                _bus.Publish(heartBeatEvent);

                // Reset the records processed.
                RawRecordsProcessed            = 0;
                ProcessedMeasurementsProcessed = 0;
                _dynamoDBRecordsSaved          = 0;
                _dynamoDBMonthlyRecordsSaved   = 0;
            }
            catch (Exception ex)
            {
                _logger.LogError(ex, "Error publishing heartbeat. Is the RabbitMQ service available?");
            }
        }