public PrometheusQmqCounter(final Gauge gauge, final String[] labels) { this.gauge = gauge.labels(labels); }
@Benchmark @BenchmarkMode({Mode.AverageTime}) @OutputTimeUnit(TimeUnit.NANOSECONDS) public void prometheusSimpleGaugeIncBenchmark() { prometheusSimpleGauge.labels("test", "group").inc(); }
@Benchmark @BenchmarkMode({Mode.AverageTime}) @OutputTimeUnit(TimeUnit.NANOSECONDS) public void prometheusSimpleGaugeSetBenchmark() { prometheusSimpleGauge.labels("test", "group").set(42); }
@Benchmark @BenchmarkMode({Mode.AverageTime}) @OutputTimeUnit(TimeUnit.NANOSECONDS) public void prometheusSimpleGaugeDecBenchmark() { prometheusSimpleGauge.labels("test", "group").dec(); }
@Setup public void setup() { prometheusGauge = io.prometheus.client.metrics.Gauge.newBuilder() .name("name") .documentation("some description..") .build(); prometheusGaugeChild = prometheusGauge.newPartial().apply(); prometheusSimpleGauge = io.prometheus.client.Gauge.build() .name("name") .help("some description..") .labelNames("some", "group").create(); prometheusSimpleGaugeChild = prometheusSimpleGauge.labels("test", "group"); prometheusSimpleGaugeNoLabels = io.prometheus.client.Gauge.build() .name("name") .help("some description..") .create(); registry = new MetricRegistry(); codahaleCounter = registry.counter("name"); }
public Child labels(String... labels) { return gauge.labels(labels); }
public static void size(String name, int number) { instance.sizes.labels(name, "").set(number); }
public static void size(String name, String type, int number) { instance.sizes.labels(name, type).set(number); }
public static void status(String name, StatusValue value) { instance.statuses.labels(name).set(value.getValue()); }
@Override public void onUserUpdateOnlineStatus(UserUpdateOnlineStatusEvent event) { String shard = Integer.toString(event.getJDA().getShardInfo().getShardId()); int memberCount = event.getJDA().getGuildCache().stream().flatMap(g -> g.getMembers().stream()).collect(Collectors.toList()).size(); members.labels(shard).set(memberCount); }
@Override protected String reportFailedQuery(String query, Object[] args, String name, long start, Throwable t) { String sql = super.reportFailedQuery(query, args, name, start, t); long now = System.currentTimeMillis(); long delta = now - start; globalQueryStats.labels(FAILED_QUERY_STATUS).observe((double) delta/1000); if (failedQueryStatsEnabled) { failedQueryStats.labels(sql).inc(); } return sql; }
private final void setGuildCount(JDA jda) { long count = jda.getGuildCache().size(); String shard = Integer.toString(jda.getShardInfo().getShardId()); guilds.labels(shard).set(count); } }
@Override public void handle(AvaIre avaire) { Metrics.uptime.labels("dynamic").set(ManagementFactory.getRuntimeMXBean().getUptime()); Metrics.memoryTotal.set(Runtime.getRuntime().totalMemory()); Metrics.memoryUsed.set(Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()); if (!avaire.areWeReadyYet() || !hasLoadedGuilds(avaire)) { return; } Metrics.guilds.set(avaire.getShardEntityCounter().getGuilds()); Metrics.users.set(avaire.getShardEntityCounter().getUsers()); Metrics.channels.labels("text").set(avaire.getShardEntityCounter().getTextChannels()); Metrics.channels.labels("voice").set(avaire.getShardEntityCounter().getVoiceChannels()); for (Region region : Region.values()) { Metrics.geoTracker.labels(region.getName()).set(0); } for (JDA shard : avaire.getShardManager().getShards()) { for (Guild guild : shard.getGuilds()) { Metrics.geoTracker.labels(guild.getRegion().getName()).inc(); } } }
@Override public void report(Measurement measurement) { if (measurement.isSimple()) { String name = measurement.name().replaceAll(ILLEGAL_CHARACTERS_REGEX, ALLOWED_DELIMITER); Gauge gauge = getOrCreateGaugeMeasurement(measurement, name); String[] tagValues = convertTagValues(measurement.tags()); double value = measurement.getValue(); gauge.labels(tagValues).set(value); } else { String baseName = measurement.name().replaceAll(ILLEGAL_CHARACTERS_REGEX, ALLOWED_DELIMITER); for (String key : measurement.fields().keySet()) { if (!isNumeric(measurement.fields().get(key))) { continue; } String metricName = baseName + ":" + key.replaceAll(ILLEGAL_CHARACTERS_REGEX, ALLOWED_DELIMITER); Gauge gauge = getOrCreateGaugeMeasurement(measurement, metricName); double value = Double.parseDouble(measurement.fields().get(key)); String[] tagValues = convertTagValues(measurement.tags()); gauge.labels(tagValues).set(value); } } }
@Override public void collect(Statics statics) { this.gauge.labels(statics.getSlotName(), statics.getAppId(), statics.getDatabase(), statics.getTable(), statics.getTarget(), String.valueOf(statics.getTotal()), String.valueOf(statics.getCurrentTime()), statics.getError() == null ? "" : statics.getError()).inc(); }
@Override public void handle(AvaIre avaire) { if (avaire.getBlacklist() == null) { register(); return; } int servers = 0, users = 0; for (BlacklistEntity entity : avaire.getBlacklist().getBlacklistEntities()) { if (!entity.isBlacklisted()) { continue; } if (entity.getScope().equals(Scope.GUILD)) { servers++; } else { users++; } } Metrics.blacklist.labels("servers").set(servers); Metrics.blacklist.labels("users").set(users); }
@Override public void handle(AvaIre avaire) { if (!avaire.areWeReadyYet()) { return; } for (JDA shard : avaire.getShardManager().getShards()) { Metrics.websocketHeartbeat.labels("Shard " + shard.getShardInfo().getShardId()) .set(shard.getPing()); } } }
private void handleSendGuildLeaveWebhook(Guild guild) { AvaIre.getLogger().info(ConsoleColor.format( "%redLeft guild with an ID of " + guild.getId() + " called: " + guild.getName() + "%reset" )); if (!avaire.areWeReadyYet()) { return; } Metrics.guilds.dec(); Metrics.geoTracker.labels(guild.getRegion().getName()).dec(); TextChannel channel = avaire.getShardManager().getTextChannelById(DiscordConstants.ACTIVITY_LOG_CHANNEL_ID); if (channel == null) { return; } channel.sendMessage( new EmbedBuilder() .setColor(Color.decode("#EF5350")) .setTimestamp(Instant.now()) .addField("Removed", String.format("%s (ID: %s)", guild.getName(), guild.getId() ), false) .build() ).queue(null, RestActionUtil.ignore); }