Compare commits

..

1 commit

Author SHA1 Message Date
sam
9f3dfc74d6
fix: make prometheus base url configurable 2025-04-11 14:58:21 +02:00
3 changed files with 7 additions and 2 deletions

View file

@ -218,7 +218,7 @@ public class MetaCommands(
await channelApi.EditMessageAsync(msg.ChannelID, msg.ID, content: "", embeds: embeds);
}
// TODO: add more checks around response format, configurable prometheus endpoint
// TODO: add more checks around response format
private async Task<double?> MessagesRate()
{
if (!config.Logging.EnableMetrics)
@ -227,7 +227,8 @@ public class MetaCommands(
try
{
var query = HttpUtility.UrlEncode("increase(catalogger_received_messages[5m])");
var resp = await _client.GetAsync($"http://localhost:9090/api/v1/query?query={query}");
var prometheusUrl = config.Logging.PrometheusUrl ?? "http://localhost:9090";
var resp = await _client.GetAsync($"{prometheusUrl}/api/v1/query?query={query}");
resp.EnsureSuccessStatusCode();
var data = await resp.Content.ReadFromJsonAsync<PrometheusResponse>();

View file

@ -33,6 +33,7 @@ public class Config
public bool EnableMetrics { get; init; } = true;
public string? SeqLogUrl { get; init; }
public string? PrometheusUrl { get; init; }
}
public class DatabaseConfig

View file

@ -7,6 +7,9 @@ LogQueries = false
SeqLogUrl = http://localhost:5341
# Whether to enable Prometheus metrics. If disabled, Catalogger will update metrics manually every so often.
EnableMetrics = false
# The URL for the Prometheus server. Used for message rate if metrics are enabled.
# Defaults to http://localhost:9090, should be changed if Prometheus is on another server.
PrometheusUrl = http://localhost:9090
[Database]
Url = Host=localhost;Database=postgres;Username=postgres;Password=postgres