Add MetricsUtil
This commit is contained in:
parent
f3b9a8d97f
commit
8cd93d68e4
|
@ -0,0 +1,28 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2021 Signal Messenger, LLC
|
||||||
|
* SPDX-License-Identifier: AGPL-3.0-only
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.whispersystems.textsecuregcm.metrics;
|
||||||
|
|
||||||
|
public class MetricsUtil {
|
||||||
|
|
||||||
|
private static final String PREFIX = "chat";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns a dot-separated ('.') name for the given class and name parts
|
||||||
|
*/
|
||||||
|
public static String name(Class<?> clazz, String... parts) {
|
||||||
|
return name(clazz.getSimpleName(), parts);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static String name(String name, String... parts) {
|
||||||
|
final StringBuilder sb = new StringBuilder(PREFIX);
|
||||||
|
sb.append(".").append(name);
|
||||||
|
for (String part : parts) {
|
||||||
|
sb.append(".").append(part);
|
||||||
|
}
|
||||||
|
return sb.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2021 Signal Messenger, LLC
|
||||||
|
* SPDX-License-Identifier: AGPL-3.0-only
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.whispersystems.textsecuregcm.metrics;
|
||||||
|
|
||||||
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
|
||||||
|
class MetricsUtilTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void name() {
|
||||||
|
|
||||||
|
assertEquals("chat.MetricsUtilTest.metric", MetricsUtil.name(MetricsUtilTest.class, "metric"));
|
||||||
|
assertEquals("chat.MetricsUtilTest.namespace.metric",
|
||||||
|
MetricsUtil.name(MetricsUtilTest.class, "namespace", "metric"));
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue