Skip to content
This repository was archived by the owner on Sep 10, 2021. It is now read-only.

Commit b09cbb6

Browse files
author
phit
committed
1.3.0
added mean tick time metric via forge gradle, moved to our package naming
1 parent 4d519cd commit b09cbb6

File tree

6 files changed

+63
-32
lines changed

6 files changed

+63
-32
lines changed

build.gradle

Lines changed: 38 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,22 @@
1+
buildscript {
2+
repositories {
3+
jcenter()
4+
mavenCentral()
5+
maven {
6+
name = 'sponge'
7+
url = 'http://repo.spongepowered.org/maven'
8+
}
9+
maven {
10+
name = 'forge'
11+
url = 'http://files.minecraftforge.net/maven'
12+
}
13+
}
14+
15+
dependencies {
16+
classpath 'net.minecraftforge.gradle:ForgeGradle:2.3-SNAPSHOT'
17+
}
18+
}
19+
120
plugins {
221
id 'java'
322
id 'idea'
@@ -7,31 +26,28 @@ plugins {
726
id 'org.spongepowered.plugin' version '0.8.1'
827
}
928

10-
group = 'de.sldk.mc.prometheusexporter'
11-
version = '1.2.0'
29+
apply plugin: 'net.minecraftforge.gradle.forge'
30+
31+
minecraft {
32+
mappings = 'snapshot_20171007'
33+
makeObfSourceJar = false
34+
runDir = "run"
35+
version = '14.23.0.2503'
36+
}
37+
38+
group = 'org.stonebound.prometheusexporter'
39+
version = '1.3.0'
1240
description = "Sponge Minecraft Prometheus Exporter"
13-
ext.url = 'https://github.com/Stonebound/minecraft-prometheus-exporter'
1441

1542
compileJava {
1643
sourceCompatibility = '1.8'
1744
targetCompatibility = '1.8'
1845
}
1946

20-
repositories {
21-
jcenter()
22-
mavenCentral()
23-
maven {
24-
name = 'sponge'
25-
url = 'http://repo.spongepowered.org/maven'
26-
}
27-
}
28-
29-
configurations {
30-
31-
}
47+
defaultTasks 'build', 'shadowJar'
3248

3349
dependencies {
34-
compile 'org.spongepowered:spongeapi:6.0.0'
50+
compile 'org.spongepowered:spongeapi:7.0.0-SNAPSHOT'
3551
compile 'io.prometheus:simpleclient_common:0.0.26'
3652
compile 'org.eclipse.jetty:jetty-server:9.4.6.v20170531'
3753
compile 'javax.servlet:javax.servlet-api:4.0.0'
@@ -42,7 +58,6 @@ shadowJar {
4258
relocate 'io.prometheus', 'prometheus.shadow.prometheus'
4359
relocate 'javax.servlet', 'prometheus.shadow.servlet'
4460

45-
configurations = [project.configurations.compile]
4661
dependencies {
4762
include dependency('io.prometheus:simpleclient_common:0.0.26')
4863
include dependency('io.prometheus:simpleclient:0.0.26')
@@ -60,14 +75,18 @@ shadowJar {
6075
}
6176

6277
blossom {
63-
def location = 'src/main/java/de/sldk/mc/prometheusexporter/PluginInfo.java'
78+
def location = 'src/main/java/org/stonebound/prometheusexporter/PluginInfo.java'
6479

6580
replaceToken '@name@', project.name, location
6681
replaceToken '@version@', project.version, location
6782
replaceToken '@description@', project.description, location
68-
replaceToken '@url@', project.url, location
6983
}
7084

85+
reobf {
86+
shadowJar{}
87+
}
88+
89+
tasks.build.dependsOn reobfShadowJar
7190

7291
signing {
7392
if (project.hasProperty('signing.keyId') && project.hasProperty('signing.password') && project.hasProperty('signing.secretKeyRingFile')) {

src/main/java/de/sldk/mc/prometheusexporter/JettyNullLogger.java renamed to src/main/java/org/stonebound/prometheusexporter/JettyNullLogger.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package de.sldk.mc.prometheusexporter;
1+
package org.stonebound.prometheusexporter;
22

33
import org.eclipse.jetty.util.log.Logger;
44

src/main/java/de/sldk/mc/prometheusexporter/MetricsController.java renamed to src/main/java/org/stonebound/prometheusexporter/MetricsController.java

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
package de.sldk.mc.prometheusexporter;
1+
package org.stonebound.prometheusexporter;
22

33
import com.google.common.collect.Iterables;
44
import io.prometheus.client.CollectorRegistry;
55
import io.prometheus.client.Gauge;
66
import io.prometheus.client.exporter.common.TextFormat;
7+
import net.minecraft.server.MinecraftServer;
78
import org.eclipse.jetty.server.Request;
89
import org.eclipse.jetty.server.handler.AbstractHandler;
910
import org.spongepowered.api.Sponge;
@@ -43,8 +44,10 @@ public void handle(String target, Request baseRequest, HttpServletRequest reques
4344
entities.labels(world.getName()).set(world.getEntities().size());
4445
tileEntities.labels(world.getName()).set(world.getTileEntities().size());
4546
}
47+
double meanTickTime = MetricsController.mean(((MinecraftServer) Sponge.getServer()).tickTimeArray) * 1.0E-6D;
4648

4749
tps.labels("tps").set(Sponge.getGame().getServer().getTicksPerSecond());
50+
tps.labels("meanticktime").set(meanTickTime);
4851
memory.labels("max").set(Runtime.getRuntime().maxMemory());
4952
memory.labels("free").set(Runtime.getRuntime().freeMemory());
5053
memory.labels("used").set(Runtime.getRuntime().maxMemory() - Runtime.getRuntime().freeMemory());
@@ -61,4 +64,15 @@ public void handle(String target, Request baseRequest, HttpServletRequest reques
6164
response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
6265
}
6366
}
67+
68+
private static long mean(long[] values)
69+
{
70+
long sum = 0l;
71+
for (long v : values)
72+
{
73+
sum+=v;
74+
}
75+
76+
return sum / values.length;
77+
}
6478
}

src/main/java/de/sldk/mc/prometheusexporter/PluginInfo.java renamed to src/main/java/org/stonebound/prometheusexporter/PluginInfo.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package de.sldk.mc.prometheusexporter;
1+
package org.stonebound.prometheusexporter;
22

33
public class PluginInfo {
44
private PluginInfo() {}
@@ -7,6 +7,6 @@ private PluginInfo() {}
77
public static final String NAME = "@name@";
88
public static final String VERSION = "@version@";
99
public static final String DESCRIPTION = "@description@";
10-
public static final String URL = "@url@";
10+
public static final String URL = "https://github.com/Stonebound/minecraft-prometheus-exporter";
1111
public static final String AUTHORS = "sladkoff, phit";
1212
}

src/main/java/de/sldk/mc/prometheusexporter/PrometheusExporter.java renamed to src/main/java/org/stonebound/prometheusexporter/PrometheusExporter.java

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package de.sldk.mc.prometheusexporter;
1+
package org.stonebound.prometheusexporter;
22

33
import com.google.inject.Inject;
44
import ninja.leaping.configurate.ConfigurationNode;
@@ -15,13 +15,11 @@
1515

1616
import java.io.File;
1717

18-
import static de.sldk.mc.prometheusexporter.PluginInfo.*;
19-
20-
@Plugin(id = ID,
21-
name = NAME,
22-
version = VERSION,
23-
description = DESCRIPTION,
24-
url = URL
18+
@Plugin(id = PluginInfo.ID,
19+
name = PluginInfo.NAME,
20+
version = PluginInfo.VERSION,
21+
description = PluginInfo.DESCRIPTION,
22+
url = PluginInfo.URL
2523
)
2624

2725
public class PrometheusExporter {
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
org.eclipse.jetty.util.log.class=de.sldk.mc.prometheusexporter.JettyNullLogger
1+
org.eclipse.jetty.util.log.class=org.stonebound.prometheusexporter.JettyNullLogger

0 commit comments

Comments
 (0)