From a74379942b2c672c9ba507093f27ead5693c1240 Mon Sep 17 00:00:00 2001 From: Diego Date: Tue, 13 Dec 2016 13:06:29 -0300 Subject: wip --- .../main/java/kamon/KamonSpringApplication.java | 12 ++++++++++++ .../main/java/kamon/akka/pingpong/PingPong.java | 22 ++++++++++++++++++++++ .../src/main/java/kamon/akka/pingpong/Pinger.java | 12 ++++++++++++ .../src/main/java/kamon/akka/pingpong/Ponger.java | 12 ++++++++++++ .../java/kamon/annotation/KamonController.java | 17 +++++++++++++++++ .../java/src/main/resources/META-INF/aop.xml | 8 ++++++++ .../java/src/main/resources/application.conf | 21 +++++++++++++++++++++ .../java/src/main/resources/logback.xml | 19 +++++++++++++++++++ 8 files changed, 123 insertions(+) create mode 100644 kamon-examples/kamon-annotation-example/java/src/main/java/kamon/KamonSpringApplication.java create mode 100644 kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/PingPong.java create mode 100644 kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/Pinger.java create mode 100644 kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/Ponger.java create mode 100644 kamon-examples/kamon-annotation-example/java/src/main/java/kamon/annotation/KamonController.java create mode 100644 kamon-examples/kamon-annotation-example/java/src/main/resources/META-INF/aop.xml create mode 100644 kamon-examples/kamon-annotation-example/java/src/main/resources/application.conf create mode 100644 kamon-examples/kamon-annotation-example/java/src/main/resources/logback.xml (limited to 'kamon-examples/kamon-annotation-example/java/src/main') diff --git a/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/KamonSpringApplication.java b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/KamonSpringApplication.java new file mode 100644 index 00000000..8103306b --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/KamonSpringApplication.java @@ -0,0 +1,12 @@ +package kamon; + +import kamon.akka.pingpong.PingPong; +import kamon.annotation.KamonController; +import org.springframework.boot.SpringApplication; + +public class KamonSpringApplication { + public static void main(String... args) { + Kamon.start(); + SpringApplication.run(new Object[] {KamonController.class, PingPong.class}, args); + } +} diff --git a/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/PingPong.java b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/PingPong.java new file mode 100644 index 00000000..8ef2f621 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/PingPong.java @@ -0,0 +1,22 @@ +package kamon.akka.pingpong; + +import akka.actor.ActorRef; +import akka.actor.ActorSystem; +import akka.actor.Props; +import org.springframework.stereotype.Component; + +import javax.annotation.PostConstruct; + +@Component +public class PingPong { + + @PostConstruct + public void initialize() { + final ActorSystem system = ActorSystem.create("kamon-spring-boot-actor-system"); + + final ActorRef pinger = system.actorOf(Props.create(Pinger.class), "pinger"); + final ActorRef ponger = system.actorOf(Props.create(Ponger.class), "ponger"); + + pinger.tell(new Ponger.PongMessage(), ponger); + } +} diff --git a/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/Pinger.java b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/Pinger.java new file mode 100644 index 00000000..dcab35b6 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/Pinger.java @@ -0,0 +1,12 @@ +package kamon.akka.pingpong; + +import akka.actor.UntypedActor; + +class Pinger extends UntypedActor { + static final class PingMessage {} + + public void onReceive(Object message) throws Exception { + if (message instanceof Ponger.PongMessage) getSender().tell(new PingMessage(), getSelf()); + else unhandled(message); + } +} diff --git a/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/Ponger.java b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/Ponger.java new file mode 100644 index 00000000..b4e8ecfa --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/akka/pingpong/Ponger.java @@ -0,0 +1,12 @@ +package kamon.akka.pingpong; + +import akka.actor.UntypedActor; + +class Ponger extends UntypedActor { + static final class PongMessage {} + + public void onReceive(Object message) throws Exception { + if (message instanceof Pinger.PingMessage) getSender().tell(new PongMessage(), getSelf()); + else unhandled(message); + } +} diff --git a/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/annotation/KamonController.java b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/annotation/KamonController.java new file mode 100644 index 00000000..27eeda53 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/annotation/KamonController.java @@ -0,0 +1,17 @@ +package kamon.annotation; + +import org.springframework.boot.autoconfigure.*; +import org.springframework.stereotype.*; +import org.springframework.web.bind.annotation.*; + +@Controller +@EnableAutoConfiguration +@RequestMapping("/kamon") +@EnableKamon +public class KamonController { + + @RequestMapping("/counter") + @ResponseBody + @Count(name = "awesomeCounter") + public String counter() { return "count!!!"; } +} diff --git a/kamon-examples/kamon-annotation-example/java/src/main/resources/META-INF/aop.xml b/kamon-examples/kamon-annotation-example/java/src/main/resources/META-INF/aop.xml new file mode 100644 index 00000000..9b144860 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/src/main/resources/META-INF/aop.xml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/kamon-examples/kamon-annotation-example/java/src/main/resources/application.conf b/kamon-examples/kamon-annotation-example/java/src/main/resources/application.conf new file mode 100644 index 00000000..1755bfc5 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/src/main/resources/application.conf @@ -0,0 +1,21 @@ +############################### +# Kamon related configuration # +############################### + +kamon { + + metric { + filters { + trace.includes = [ "**" ] + akka-actor.includes = [ "**" ] + akka-actor.excludes = ["*/system/**", "*/user/IO-**" ] + akka-dispatcher.includes = [ "**" ] + akka-dispatcher.excludes = [ ] + } + } + + modules { + kamon-annotation.auto-start = yes + kamon-log-reporter.auto-start = yes + } +} diff --git a/kamon-examples/kamon-annotation-example/java/src/main/resources/logback.xml b/kamon-examples/kamon-annotation-example/java/src/main/resources/logback.xml new file mode 100644 index 00000000..fac5ad3d --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/src/main/resources/logback.xml @@ -0,0 +1,19 @@ + + + + + + + + + ${CONSOLE_LOG_PATTERN} + + + + + + + + + + -- cgit v1.2.3