public void WriteMetrics(LnrpcPendingChannelsResponse pendingChannelsResponse) { if (pendingChannelsResponse.Pending_open_channels != null) { foreach (var pendingOpen in pendingChannelsResponse.Pending_open_channels) { var nodeAlias = this.nodeAliasCache.GetNodeAlias(pendingOpen.Channel.Remote_node_pub); this.metrics.Write($"{this.configuration.MetricPrefix}_pending_open_channels", GetFields(pendingOpen), GetTags(nodeAlias)); } } }
public void WriteMetrics(LnrpcPendingChannelsResponse pendingChannelsResponse) { if (pendingChannelsResponse.Pending_force_closing_channels != null) { foreach (var pendingForceCLose in pendingChannelsResponse.Pending_force_closing_channels) { this.metrics.Write($"{this.configuration.MetricPrefix}_forced_closed_channels", GetFields(pendingForceCLose), GetTags(pendingForceCLose)); new LnrpcPendingHtlcMetrics(this.configuration, this.metrics).WriteMetrics(pendingForceCLose); } } }
public async Task RefreshOnlyIfNecessary(LnrpcListChannelsResponse listChannelsResponse, LnrpcPendingChannelsResponse pendingChannelsResponse) { var allPublicKeys = new List <string>(); if (listChannelsResponse?.Channels != null) { allPublicKeys.AddRange(listChannelsResponse.Channels.Select(c => c.Remote_pubkey)); } if (pendingChannelsResponse?.Pending_open_channels != null) { allPublicKeys.AddRange(pendingChannelsResponse.Pending_open_channels.Select(c => c.Channel.Remote_node_pub)); } foreach (var publicKey in allPublicKeys) { if (this.nodeAliasCache.ContainsKey(publicKey)) { continue; } else { var nodeInfo = await this.client.SwaggerClient.GetNodeInfoAsync(publicKey).ConfigureAwait(false); this.nodeAliasCache.Add(nodeInfo.Node.Pub_key, nodeInfo.Node.Alias); } } }