mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-29 08:36:45 +01:00
Remove metrics
This commit is contained in:
parent
31cefbfc8c
commit
00e18d4096
10
pom.xml
10
pom.xml
@ -75,17 +75,12 @@
|
|||||||
<configuration>
|
<configuration>
|
||||||
<artifactSet>
|
<artifactSet>
|
||||||
<includes>
|
<includes>
|
||||||
<include>com.turt2live.metrics:MetricsExtension</include>
|
|
||||||
<include>commons-logging:commons-logging</include>
|
<include>commons-logging:commons-logging</include>
|
||||||
<include>org.apache.tomcat:tomcat-jdbc</include>
|
<include>org.apache.tomcat:tomcat-jdbc</include>
|
||||||
<include>org.apache.tomcat:tomcat-juli</include>
|
<include>org.apache.tomcat:tomcat-juli</include>
|
||||||
</includes>
|
</includes>
|
||||||
</artifactSet>
|
</artifactSet>
|
||||||
<relocations>
|
<relocations>
|
||||||
<relocation>
|
|
||||||
<pattern>com.turt2live.metrics</pattern>
|
|
||||||
<shadedPattern>com.gmail.nossr50.metrics.mcstats</shadedPattern>
|
|
||||||
</relocation>
|
|
||||||
<relocation>
|
<relocation>
|
||||||
<pattern>org.apache.commons.logging</pattern>
|
<pattern>org.apache.commons.logging</pattern>
|
||||||
<shadedPattern>com.gmail.nossr50.commons.logging</shadedPattern>
|
<shadedPattern>com.gmail.nossr50.commons.logging</shadedPattern>
|
||||||
@ -146,11 +141,6 @@
|
|||||||
<version>4.10</version>
|
<version>4.10</version>
|
||||||
<scope>test</scope>
|
<scope>test</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
|
||||||
<groupId>com.turt2live.metrics</groupId>
|
|
||||||
<artifactId>MetricsExtension</artifactId>
|
|
||||||
<version>0.0.5-SNAPSHOT</version>
|
|
||||||
</dependency>
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.tomcat</groupId>
|
<groupId>org.apache.tomcat</groupId>
|
||||||
<artifactId>tomcat-jdbc</artifactId>
|
<artifactId>tomcat-jdbc</artifactId>
|
||||||
|
@ -31,7 +31,6 @@ import com.gmail.nossr50.listeners.InventoryListener;
|
|||||||
import com.gmail.nossr50.listeners.PlayerListener;
|
import com.gmail.nossr50.listeners.PlayerListener;
|
||||||
import com.gmail.nossr50.listeners.SelfListener;
|
import com.gmail.nossr50.listeners.SelfListener;
|
||||||
import com.gmail.nossr50.listeners.WorldListener;
|
import com.gmail.nossr50.listeners.WorldListener;
|
||||||
import com.gmail.nossr50.metrics.MetricsManager;
|
|
||||||
import com.gmail.nossr50.party.PartyManager;
|
import com.gmail.nossr50.party.PartyManager;
|
||||||
import com.gmail.nossr50.runnables.CheckDateTask;
|
import com.gmail.nossr50.runnables.CheckDateTask;
|
||||||
import com.gmail.nossr50.runnables.SaveTimerTask;
|
import com.gmail.nossr50.runnables.SaveTimerTask;
|
||||||
@ -179,8 +178,6 @@ public class mcMMO extends JavaPlugin {
|
|||||||
scheduleTasks();
|
scheduleTasks();
|
||||||
CommandRegistrationManager.registerCommands();
|
CommandRegistrationManager.registerCommands();
|
||||||
|
|
||||||
MetricsManager.setup();
|
|
||||||
|
|
||||||
placeStore = ChunkManagerFactory.getChunkManager(); // Get our ChunkletManager
|
placeStore = ChunkManagerFactory.getChunkManager(); // Get our ChunkletManager
|
||||||
|
|
||||||
checkForUpdates();
|
checkForUpdates();
|
||||||
|
@ -1,353 +0,0 @@
|
|||||||
package com.gmail.nossr50.metrics;
|
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.io.InputStreamReader;
|
|
||||||
import java.util.Locale;
|
|
||||||
|
|
||||||
import com.gmail.nossr50.mcMMO;
|
|
||||||
import com.gmail.nossr50.config.Config;
|
|
||||||
import com.gmail.nossr50.config.HiddenConfig;
|
|
||||||
import com.gmail.nossr50.config.experience.ExperienceConfig;
|
|
||||||
import com.gmail.nossr50.datatypes.experience.FormulaType;
|
|
||||||
import com.gmail.nossr50.locale.LocaleLoader;
|
|
||||||
|
|
||||||
import com.turt2live.metrics.EMetrics;
|
|
||||||
import com.turt2live.metrics.Metrics;
|
|
||||||
import com.turt2live.metrics.Metrics.Graph;
|
|
||||||
import com.turt2live.metrics.data.DataEvent;
|
|
||||||
import com.turt2live.metrics.data.DataTracker;
|
|
||||||
import com.turt2live.metrics.tracker.Tracker;
|
|
||||||
|
|
||||||
public class MetricsManager {
|
|
||||||
private static boolean setup = false;
|
|
||||||
|
|
||||||
private static Tracker chimeraUseTracker;
|
|
||||||
private static Tracker chimeraServerUseTracker;
|
|
||||||
|
|
||||||
private static boolean customConfig = false;
|
|
||||||
|
|
||||||
private static DataTracker tracker;
|
|
||||||
private static EMetrics emetrics;
|
|
||||||
|
|
||||||
public static void setup() {
|
|
||||||
if (setup) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Config.getInstance().getStatsTrackingEnabled()) {
|
|
||||||
try {
|
|
||||||
emetrics = new EMetrics(mcMMO.p);
|
|
||||||
Metrics metrics = emetrics.getMetrics();
|
|
||||||
|
|
||||||
// Timings Graph
|
|
||||||
Graph timingsGraph = metrics.createGraph("Percentage of servers using timings");
|
|
||||||
|
|
||||||
if (mcMMO.p.getServer().getPluginManager().useTimings()) {
|
|
||||||
timingsGraph.addPlotter(new Metrics.Plotter("Enabled") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
timingsGraph.addPlotter(new Metrics.Plotter("Disabled") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Donut Version Graph
|
|
||||||
Graph versionDonutGraph = metrics.createGraph("Donut Version");
|
|
||||||
|
|
||||||
boolean haveVersionInformation = false;
|
|
||||||
boolean isOfficialBuild = false;
|
|
||||||
String officialKey = "e14cfacdd442a953343ebd8529138680";
|
|
||||||
|
|
||||||
String version = mcMMO.p.getDescription().getVersion();
|
|
||||||
|
|
||||||
InputStreamReader isr = new InputStreamReader(mcMMO.p.getResource(".jenkins"));
|
|
||||||
BufferedReader br = new BufferedReader(isr);
|
|
||||||
char[] key = new char[32];
|
|
||||||
br.read(key);
|
|
||||||
if (officialKey.equals(String.valueOf(key))) {
|
|
||||||
isOfficialBuild = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (version.contains("-")) {
|
|
||||||
String majorVersion = version.substring(0, version.indexOf("-"));
|
|
||||||
String subVersion;
|
|
||||||
|
|
||||||
if (isOfficialBuild) {
|
|
||||||
int startIndex = version.indexOf("-");
|
|
||||||
if (version.substring(startIndex + 1).contains("-")) {
|
|
||||||
subVersion = version.substring(startIndex, version.indexOf("-", startIndex + 1));
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
subVersion = "-release";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
subVersion = "-custom";
|
|
||||||
}
|
|
||||||
|
|
||||||
version = majorVersion + "~=~" + subVersion;
|
|
||||||
haveVersionInformation = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (haveVersionInformation) {
|
|
||||||
versionDonutGraph.addPlotter(new Metrics.Plotter(version) {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Official v Custom build Graph
|
|
||||||
Graph officialGraph = metrics.createGraph("Built by official ci");
|
|
||||||
|
|
||||||
if (isOfficialBuild) {
|
|
||||||
officialGraph.addPlotter(new Metrics.Plotter("Yes") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
officialGraph.addPlotter(new Metrics.Plotter("No") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Chunkmeta enabled Graph
|
|
||||||
Graph chunkmetaGraph = metrics.createGraph("Uses Chunkmeta");
|
|
||||||
|
|
||||||
if (HiddenConfig.getInstance().getChunkletsEnabled()) {
|
|
||||||
chunkmetaGraph.addPlotter(new Metrics.Plotter("Yes") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
chunkmetaGraph.addPlotter(new Metrics.Plotter("No") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Storage method Graph
|
|
||||||
Graph storageGraph = metrics.createGraph("Storage method");
|
|
||||||
|
|
||||||
if (Config.getInstance().getUseMySQL()) {
|
|
||||||
storageGraph.addPlotter(new Metrics.Plotter("SQL") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
storageGraph.addPlotter(new Metrics.Plotter("Flatfile") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Locale Graph
|
|
||||||
Graph localeGraph = metrics.createGraph("Locale");
|
|
||||||
|
|
||||||
localeGraph.addPlotter(new Metrics.Plotter(LocaleLoader.getCurrentLocale().getDisplayLanguage(Locale.US)) {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// ExperienceFormulaShape Graph
|
|
||||||
Graph experienceFormulaShapeGraph = metrics.createGraph("Experience Formula Shape Graph");
|
|
||||||
|
|
||||||
experienceFormulaShapeGraph.addPlotter(new Metrics.Plotter(ExperienceConfig.getInstance().getFormulaType().toString()) {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// GlobalMultiplier Graph
|
|
||||||
Graph globalMultiplierGraph = metrics.createGraph("Global Multiplier Graph");
|
|
||||||
|
|
||||||
globalMultiplierGraph.addPlotter(new Metrics.Plotter(ExperienceConfig.getInstance().getExperienceGainsGlobalMultiplier() + "") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// GlobalCurveModifier Graph
|
|
||||||
Graph globalCurveModifierGraph = metrics.createGraph("Global Curve Modifier Graph");
|
|
||||||
|
|
||||||
globalCurveModifierGraph.addPlotter(new Metrics.Plotter(ExperienceConfig.getInstance().getMultiplier(FormulaType.LINEAR) + "") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
// GlobalMultiplierGraph Fuzzy Logic Numbers
|
|
||||||
Graph globalMultiplierGraphFuzzy = metrics.createGraph("Global Multiplier Fuzz");
|
|
||||||
|
|
||||||
if (ExperienceConfig.getInstance().getExperienceGainsGlobalMultiplier() > 1.0) {
|
|
||||||
globalMultiplierGraphFuzzy.addPlotter(new Metrics.Plotter("Higher") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else if (ExperienceConfig.getInstance().getExperienceGainsGlobalMultiplier() < 1.0) {
|
|
||||||
globalMultiplierGraphFuzzy.addPlotter(new Metrics.Plotter("Lower") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
globalMultiplierGraphFuzzy.addPlotter(new Metrics.Plotter("Default") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// GlobalCurveModifier Fuzzy Logic Numbers
|
|
||||||
Graph globalCurveMultiplierGraphFuzzy = metrics.createGraph("Global Curve Multiplier Fuzz");
|
|
||||||
|
|
||||||
if (ExperienceConfig.getInstance().getMultiplier(FormulaType.LINEAR) > 20.0) {
|
|
||||||
globalCurveMultiplierGraphFuzzy.addPlotter(new Metrics.Plotter("Higher") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else if (ExperienceConfig.getInstance().getMultiplier(FormulaType.LINEAR) < 20.0) {
|
|
||||||
globalCurveMultiplierGraphFuzzy.addPlotter(new Metrics.Plotter("Lower") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
globalCurveMultiplierGraphFuzzy.addPlotter(new Metrics.Plotter("Default") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Chimera Wing Usage Trackers
|
|
||||||
final String chimeraGraphName = "Chimera Wing Usage";
|
|
||||||
|
|
||||||
chimeraUseTracker = EMetrics.createBasicTracker(chimeraGraphName, "Player use");
|
|
||||||
chimeraServerUseTracker = EMetrics.createEnabledTracker(chimeraGraphName, "Server use");
|
|
||||||
|
|
||||||
emetrics.addTracker(chimeraUseTracker);
|
|
||||||
emetrics.addTracker(chimeraServerUseTracker);
|
|
||||||
|
|
||||||
// Chimera Wing Enabled Graph
|
|
||||||
Graph chimeraGraph = metrics.createGraph("Chimera Wing");
|
|
||||||
|
|
||||||
if (Config.getInstance().getChimaeraEnabled()) {
|
|
||||||
chimeraGraph.addPlotter(new Metrics.Plotter("Enabled") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
chimeraGraph.addPlotter(new Metrics.Plotter("Disabled") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
// Vanilla v Modified config graph
|
|
||||||
Graph customConfigGraph = metrics.createGraph("Modified Configs");
|
|
||||||
|
|
||||||
if (customConfig) {
|
|
||||||
customConfigGraph.addPlotter(new Metrics.Plotter("Edited") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
customConfigGraph.addPlotter(new Metrics.Plotter("Vanilla") {
|
|
||||||
@Override
|
|
||||||
public int getValue() {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Debug stuff
|
|
||||||
* tracker = emetrics.getDataTracker();
|
|
||||||
* tracker.enable();
|
|
||||||
* tracker.setFilter(new DataEvent.DataType [] { DataEvent.DataType.SEND_DATA });
|
|
||||||
*/
|
|
||||||
|
|
||||||
emetrics.startMetrics();
|
|
||||||
}
|
|
||||||
catch (IOException e) {
|
|
||||||
mcMMO.p.getLogger().warning("Failed to submit stats.");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void chimeraWingUsed() {
|
|
||||||
chimeraUseTracker.increment();
|
|
||||||
chimeraServerUseTracker.increment();
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void customConfig() {
|
|
||||||
customConfig = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
|
||||||
private static void debug() {
|
|
||||||
emetrics.getMetrics().flush();
|
|
||||||
|
|
||||||
for (DataEvent event : tracker.getEvents()) {
|
|
||||||
String graphName = event.getGraphName();
|
|
||||||
String colName = event.getTrackerName();
|
|
||||||
int value = event.getValueSent();
|
|
||||||
|
|
||||||
System.out.println("Graph: " + graphName + ", Column: " + colName + ", Value: " + value);
|
|
||||||
}
|
|
||||||
|
|
||||||
tracker.resetEvents();
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
Reference in New Issue
Block a user