aboutsummaryrefslogtreecommitdiff
path: root/kamon-sigar/src/test
diff options
context:
space:
mode:
Diffstat (limited to 'kamon-sigar/src/test')
-rw-r--r--kamon-sigar/src/test/java/kamon/sigar/SigarAgentMain.java41
-rw-r--r--kamon-sigar/src/test/java/kamon/sigar/SigarAgentTest.java48
-rw-r--r--kamon-sigar/src/test/resources/readme-test.md27
3 files changed, 116 insertions, 0 deletions
diff --git a/kamon-sigar/src/test/java/kamon/sigar/SigarAgentMain.java b/kamon-sigar/src/test/java/kamon/sigar/SigarAgentMain.java
new file mode 100644
index 00000000..5559a4ee
--- /dev/null
+++ b/kamon-sigar/src/test/java/kamon/sigar/SigarAgentMain.java
@@ -0,0 +1,41 @@
+/* =========================================================================================
+ * Copyright © 2013-2014 the kamon project <http://kamon.io/>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+ * either express or implied. See the License for the specific language governing permissions
+ * and limitations under the License.
+ * =========================================================================================
+ */
+
+package kamon.sigar;
+
+import java.util.logging.Logger;
+
+import org.hyperic.sigar.Sigar;
+
+/** Verify sigar loader operation when invoked as agent. */
+public class SigarAgentMain {
+
+ private static final Logger logger = Logger.getLogger(SigarAgentMain.class
+ .getName());
+
+ public static void main(final String... args) throws Exception {
+
+ /** Sigar must be availbale now. */
+ final Sigar sigar = new Sigar();
+
+ logger.info("Process id: " + sigar.getPid());
+ logger.info("Host FQDN: " + sigar.getFQDN());
+ logger.info("CPU info: " + sigar.getCpu());
+ logger.info("MEM info: " + sigar.getMem());
+ logger.info("CPU load: " + sigar.getLoadAverage()[0]);
+
+ }
+
+}
diff --git a/kamon-sigar/src/test/java/kamon/sigar/SigarAgentTest.java b/kamon-sigar/src/test/java/kamon/sigar/SigarAgentTest.java
new file mode 100644
index 00000000..c910e5fe
--- /dev/null
+++ b/kamon-sigar/src/test/java/kamon/sigar/SigarAgentTest.java
@@ -0,0 +1,48 @@
+/* =========================================================================================
+ * Copyright © 2013-2014 the kamon project <http://kamon.io/>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file
+ * except in compliance with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software distributed under the
+ * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
+ * either express or implied. See the License for the specific language governing permissions
+ * and limitations under the License.
+ * =========================================================================================
+ */
+
+package kamon.sigar;
+
+import static org.junit.Assert.assertTrue;
+
+import java.io.File;
+
+import org.hyperic.sigar.Sigar;
+import org.junit.Test;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/** Verify sigar loader operation. */
+public class SigarAgentTest {
+
+ private final Logger logger = LoggerFactory.getLogger(this.getClass());
+
+ @Test
+ public void provision() throws Exception {
+
+ final File extractLocation = new File("target/native");
+ SigarAgent.provision(extractLocation);
+ final Sigar sigar = new Sigar();
+ assertTrue(sigar.getPid() > 0);
+
+ logger.info("Process id: {}", sigar.getPid());
+ logger.info("Host FQDN: {}", sigar.getFQDN());
+ logger.info("CPU info: {}", sigar.getCpu());
+ logger.info("MEM info: {}", sigar.getMem());
+ logger.info("CPU load: {}", sigar.getLoadAverage()[0]);
+
+ }
+
+}
diff --git a/kamon-sigar/src/test/resources/readme-test.md b/kamon-sigar/src/test/resources/readme-test.md
new file mode 100644
index 00000000..4e32c2b1
--- /dev/null
+++ b/kamon-sigar/src/test/resources/readme-test.md
@@ -0,0 +1,27 @@
+
+### Kamon Sigar 1) agent 2) extractor 3) loader.
+
+To load as JVM agent:
+```
+java -javaagent:/path/to/kamon-sigar.jar
+# OR
+java -javaagent:/path/to/kamon-sigar.jar=/path/to/sigar/extract/folder ...
+
+```
+
+To load from your code:
+```
+ import java.io.File;
+ import kamon.sigar.SigarAgent;
+ import org.hyperic.sigar.Sigar;
+
+ SigarAgent.provision();
+ final Sigar sigar = new Sigar();
+
+// OR
+
+ final File extractLocation = new File("./target/native");
+ SigarAgent.provision(extractLocation);
+ final Sigar sigar = new Sigar();
+
+```