public ServerGroup(string name, ServerVisibility visibility, DarkRiftThreadHelper threadHelper, Logger logger, MetricsCollector metricsCollector) { this.Name = name; this.Visibility = visibility; this.threadHelper = threadHelper; this.logger = logger; serversConnectedGauge = metricsCollector.Gauge("remote_servers_connected", "The number of servers connected to the server in this group.", "group").WithTags(name); serverJoinedEventTimeHistogram = metricsCollector.Histogram("remote_server_joined_event_time", "The time taken to execute the ServerJoined event.", "group").WithTags(name); serverLeftEventTimeHistogram = metricsCollector.Histogram("remote_server_left_event_time", "The time taken to execute the ServerLeft event.", "group").WithTags(name); serverJoinedEventFailuresCounter = metricsCollector.Counter("remote_server_joined_event_failures", "The number of failures executing the ServerJoined event.", "group").WithTags(name); serverLeftEventFailuresCounter = metricsCollector.Counter("remote_server_left_event_failures", "The number of failures executing the ServerLeft event.", "group").WithTags(name); }
/// <summary> /// Creates a new remote server. /// </summary> /// <param name="id">The ID of the server.</param> /// <param name="host">The host connected to.</param> /// <param name="port">The port connected to.</param> /// <param name="group">The group the server belongs to.</param> /// <param name="threadHelper">The thread helper to use.</param> /// <param name="logger">The logger to use.</param> /// <param name="metricsCollector">The metrics collector to use.</param> internal DownstreamRemoteServer(ushort id, string host, ushort port, DownstreamServerGroup group, DarkRiftThreadHelper threadHelper, Logger logger, MetricsCollector metricsCollector) { this.ID = id; this.Host = host; this.Port = port; this.serverGroup = group; this.threadHelper = threadHelper; this.logger = logger; messagesSentCounter = metricsCollector.Counter("messages_sent", "The number of messages sent to remote servers."); messagesReceivedCounter = metricsCollector.Counter("messages_received", "The number of messages received from remote servers."); messageReceivedEventTimeHistogram = metricsCollector.Histogram("message_received_event_time", "The time taken to execute the MessageReceived event."); messageReceivedEventFailuresCounter = metricsCollector.Counter("message_received_event_failures", "The number of failures executing the MessageReceived event."); serverConnectedEventTimeHistogram = metricsCollector.Histogram("remote_server_connected_event_time", "The time taken to execute the ServerConnected event.", "group").WithTags(group.Name); serverDisconnectedEventTimeHistogram = metricsCollector.Histogram("remote_server_disconnected_event_time", "The time taken to execute the ServerDisconnected event.", "group").WithTags(group.Name); serverConnectedEventFailuresCounter = metricsCollector.Counter("remote_server_connected_event_failures", "The number of failures executing the ServerConnected event.", "group").WithTags(group.Name); serverDisconnectedEventFailuresCounter = metricsCollector.Counter("remote_server_disconnected_event_failures", "The number of failures executing the ServerDisconnected event.", "group").WithTags(group.Name); }
/// <summary> /// Creates a new client manager. /// </summary> /// <param name="settings">The settings for this client manager.</param> /// <param name="networkListenerManager">The server's network listener manager.</param> /// <param name="threadHelper">The thread helper the client manager will use.</param> /// <param name="logger">The logger this client manager will use.</param> /// <param name="clientLogger">The logger clients will use.</param> internal ClientManager(ServerSpawnData.ServerSettings settings, NetworkListenerManager networkListenerManager, DarkRiftThreadHelper threadHelper, Logger logger, Logger clientLogger) #endif { this.MaxStrikes = settings.MaxStrikes; this.networkListenerManager = networkListenerManager; this.threadHelper = threadHelper; this.logger = logger; this.clientLogger = clientLogger; #if PRO this.clientMetricsCollector = clientMetricsCollector; clientsConnectedGauge = metricsCollector.Gauge("clients_connected", "The number of clients connected to the server."); clientConnectedEventTimeHistogram = metricsCollector.Histogram("client_connected_event_time", "The time taken to execute the ClientConnected event."); clientDisconnectedEventTimeHistogram = metricsCollector.Histogram("client_disconnected_event_time", "The time taken to execute the ClientDisconnected event."); clientConnectedEventFailuresCounter = metricsCollector.Counter("client_connected_event_failures", "The number of failures executing the ClientConnected event."); clientDisconnectedEventFailuresCounter = metricsCollector.Counter("client_disconnected_event_failures", "The number of failures executing the ClientDisconnected event."); #endif }
public void RemoveFifteenSecondsIntervalMeterMetric(ICounterMetric meterMetricToRemove) { fifteenSecondsIntervalMeterMetrics.TryRemove(meterMetricToRemove); }
public void AddFifteenSecondsIntervalMeterMetric(ICounterMetric newMeterMetric) { fifteenSecondsIntervalMeterMetrics.Add(newMeterMetric); }
public void RemoveFiveSecondsIntervalMeterMetric(ICounterMetric meterMetricToRemove) { fiveSecondsTickIntervalMetrics.TryRemove(meterMetricToRemove); }
public void AddFiveSecondsIntervalMeterMetric(ICounterMetric newMeterMetric) { fiveSecondsTickIntervalMetrics.Add(newMeterMetric); }
public void RemovePerSecondCounterMetric(ICounterMetric perSecondCounterMetricToRemove) { oneSecondIntervalMetrics.TryRemove(perSecondCounterMetricToRemove); }
public void AddPerSecondCounterMetric(ICounterMetric newPerSecondCounterMetric) { oneSecondIntervalMetrics.Add(newPerSecondCounterMetric); }