diff options
12 files changed, 197 insertions, 0 deletions
diff --git a/kamon-examples/kamon-annotation-example/java/pom.xml b/kamon-examples/kamon-annotation-example/java/pom.xml new file mode 100644 index 00000000..d1fa4690 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/pom.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <groupId>kamon.annotation</groupId> + <artifactId>kamon-spring-boot</artifactId> + <version>0.1.0</version> + + <dependencies> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-web</artifactId> + <version>1.2.3.RELEASE</version> + </dependency> + <dependency> + <groupId>io.kamon</groupId> + <artifactId>kamon-core_2.11</artifactId> + <version>0.5.2</version> + </dependency> + <dependency> + <groupId>io.kamon</groupId> + <artifactId>kamon-annotation_2.11</artifactId> + <version>0.5.2</version> + </dependency> + <dependency> + <groupId>io.kamon</groupId> + <artifactId>kamon-log-reporter_2.11</artifactId> + <version>0.5.2</version> + </dependency> + </dependencies> + + <properties> + <java.version>1.8</java.version> + </properties> + + + <build> + <plugins> + <plugin> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-maven-plugin</artifactId> + </plugin> + </plugins> + </build> + + <repositories> + <repository> + <id>io.kamon</id> + <url>http://snapshots.kamon.io</url> + </repository> + </repositories> +</project> 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/java/kamon/annotation/KamonSpringApplication.java b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/annotation/KamonSpringApplication.java new file mode 100644 index 00000000..fec55df6 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/src/main/java/kamon/annotation/KamonSpringApplication.java @@ -0,0 +1,11 @@ +package kamon.annotation; + +import kamon.Kamon; +import org.springframework.boot.SpringApplication; + +public class KamonSpringApplication { + public static void main(String... args) { + Kamon.start(); + SpringApplication.run(KamonController.class,args); + } +} 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..595f9b89 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/java/src/main/resources/application.conf @@ -0,0 +1,10 @@ +############################### +# Kamon related configuration # +############################### + +kamon { + modules { + kamon-annotation.auto-start = yes + kamon-log-reporter.auto-start = yes + } +}
\ No newline at end of file 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 @@ +<?xml version="1.0" encoding="UTF-8"?> +<configuration> + <property name="CONSOLE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${PID:- } [%t] --- %-40.40logger{39} : %m%n%wex"/> + + <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" /> + + <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> + <encoder> + <pattern>${CONSOLE_LOG_PATTERN}</pattern> + </encoder> + </appender> + + <root level="INFO"> + <appender-ref ref="CONSOLE" /> + </root> + + <!-- logger name="org.springframework" level="DEBUG"/ --> + +</configuration> diff --git a/kamon-examples/kamon-annotation-example/scala/build.sbt b/kamon-examples/kamon-annotation-example/scala/build.sbt new file mode 100644 index 00000000..2200ad6f --- /dev/null +++ b/kamon-examples/kamon-annotation-example/scala/build.sbt @@ -0,0 +1,22 @@ +name := "spring-boot-kamon" + +version := "1.0" + +scalaVersion := "2.11.6" + +sbtVersion := "0.13.1" + +resolvers += "Kamon Repository Snapshots" at "http://snapshots.kamon.io" + +libraryDependencies ++= Seq( + "org.springframework.boot" % "spring-boot-starter-web" % "1.2.3.RELEASE", + "io.kamon" %% "kamon-core" % "0.5.2", + "io.kamon" %% "kamon-annotation" % "0.5.2", + "io.kamon" %% "kamon-log-reporter" % "0.5.2" +) + +aspectjSettings + +fork in run := true + +javaOptions in run <++= AspectjKeys.weaverOptions in Aspectj diff --git a/kamon-examples/kamon-annotation-example/scala/project/plugins.sbt b/kamon-examples/kamon-annotation-example/scala/project/plugins.sbt new file mode 100644 index 00000000..eba7b696 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/scala/project/plugins.sbt @@ -0,0 +1 @@ +addSbtPlugin("com.typesafe.sbt" % "sbt-aspectj" % "0.10.0") diff --git a/kamon-examples/kamon-annotation-example/scala/src/main/resources/META-INF/aop.xml b/kamon-examples/kamon-annotation-example/scala/src/main/resources/META-INF/aop.xml new file mode 100644 index 00000000..9b144860 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/scala/src/main/resources/META-INF/aop.xml @@ -0,0 +1,8 @@ +<!DOCTYPE aspectj PUBLIC "-//AspectJ//DTD//EN" "http://www.eclipse.org/aspectj/dtd/aspectj.dtd"> + +<aspectj> + <weaver options="-Xlint:ignore"> + <include within="kamon..*"/> + <exclude within="org.aspectj.*"/> + </weaver> +</aspectj> diff --git a/kamon-examples/kamon-annotation-example/scala/src/main/resources/application.conf b/kamon-examples/kamon-annotation-example/scala/src/main/resources/application.conf new file mode 100644 index 00000000..595f9b89 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/scala/src/main/resources/application.conf @@ -0,0 +1,10 @@ +############################### +# Kamon related configuration # +############################### + +kamon { + modules { + kamon-annotation.auto-start = yes + kamon-log-reporter.auto-start = yes + } +}
\ No newline at end of file diff --git a/kamon-examples/kamon-annotation-example/scala/src/main/resources/logback.xml b/kamon-examples/kamon-annotation-example/scala/src/main/resources/logback.xml new file mode 100644 index 00000000..fac5ad3d --- /dev/null +++ b/kamon-examples/kamon-annotation-example/scala/src/main/resources/logback.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> +<configuration> + <property name="CONSOLE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %5p ${PID:- } [%t] --- %-40.40logger{39} : %m%n%wex"/> + + <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" /> + + <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender"> + <encoder> + <pattern>${CONSOLE_LOG_PATTERN}</pattern> + </encoder> + </appender> + + <root level="INFO"> + <appender-ref ref="CONSOLE" /> + </root> + + <!-- logger name="org.springframework" level="DEBUG"/ --> + +</configuration> diff --git a/kamon-examples/kamon-annotation-example/scala/src/main/scala/kamon/annotation/KamonController.scala b/kamon-examples/kamon-annotation-example/scala/src/main/scala/kamon/annotation/KamonController.scala new file mode 100644 index 00000000..00c88715 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/scala/src/main/scala/kamon/annotation/KamonController.scala @@ -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(Array("/kamon")) +@EnableKamon +class KamonController { + + @RequestMapping(Array("/counter")) + @ResponseBody + @Count(name = "awesomeCounter") + def counter(): String = "count!!!" +}
\ No newline at end of file diff --git a/kamon-examples/kamon-annotation-example/scala/src/main/scala/kamon/annotation/KamonSpringApplication.scala b/kamon-examples/kamon-annotation-example/scala/src/main/scala/kamon/annotation/KamonSpringApplication.scala new file mode 100644 index 00000000..595900a8 --- /dev/null +++ b/kamon-examples/kamon-annotation-example/scala/src/main/scala/kamon/annotation/KamonSpringApplication.scala @@ -0,0 +1,10 @@ +package kamon.annotation + +import kamon.Kamon +import org.springframework.boot.SpringApplication + +object KamonSpringApplication extends App { + Kamon.start() + + SpringApplication.run(classOf[KamonController]) +} |