diff options
Diffstat (limited to 'kamon-sigar/src/test')
-rw-r--r-- | kamon-sigar/src/test/java/kamon/sigar/SigarAgentMain.java | 41 | ||||
-rw-r--r-- | kamon-sigar/src/test/java/kamon/sigar/SigarAgentTest.java | 48 | ||||
-rw-r--r-- | kamon-sigar/src/test/resources/readme-test.md | 27 |
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(); + +``` |