From bb7623dc7ca2a9d534647fbba5b64b0d5fd7e9e2 Mon Sep 17 00:00:00 2001 From: Sergio Magnacco Date: Mon, 13 Jan 2014 14:53:43 -0300 Subject: Adding documentation for install and configuration --- site/src/jekyll/documentation/index.md | 109 +++++++++++++++++++++++++++++++++ 1 file changed, 109 insertions(+) create mode 100644 site/src/jekyll/documentation/index.md (limited to 'site') diff --git a/site/src/jekyll/documentation/index.md b/site/src/jekyll/documentation/index.md new file mode 100644 index 00000000..3d58349f --- /dev/null +++ b/site/src/jekyll/documentation/index.md @@ -0,0 +1,109 @@ +--- +title: kamon | Documentation +layout: default +--- + +Documentation +=== + +Dependencies +--- + +Apart from scala library kamon depends on: + +- aspectj +- new relic agent (new relic users) +- spray-io +- akka-actor + + +Installation +--- +Kamon works with SBT, so you need to add Kamon.io repository to your resolvers. + +Configuration +--- +Just like other products in the scala ecosystem, it relies on the typesafe configuration library. If you are a new relic user, you will requiere to add a logger to the application.conf file + + +Since kamon uses the same configuration technique as [Spray](http://spray.io/documentation "Spray") / [Akka](http://akka.io/docs "Akka") you might want to check out the [Akka-Documentation-configuration](http://doc.akka.io/docs/akka/2.1.4/general/configuration.html "Akka Documentation on configuration") +. +In order to see Kamon in action you need first to set up your sbt project. + +1. Add Kamon repository to resolvers + +```scala +"Kamon Repository" at "http://repo.kamon.io" +``` + +2. Add libraryDepenency + +```scala + "kamon" %% "kamon-spray" % "0.0.11", +``` + +In addition we suggest to create aspectj.sbt file and add this content + +```scala + import com.typesafe.sbt.SbtAspectj._ + + aspectjSettings + + javaOptions <++= AspectjKeys.weaverOptions in Aspectj +``` + +3. Add to your plugins.sbt in project folder (if you don't have one yet, create the file) and add the Kamon release to the resolver and the aspecj. If you have new relic, you need to add the sbt-newrelic plugin + +```scala + resolvers += Resolver.url("Kamon Releases", + url("http://repo.kamon.io"))(Resolver.ivyStylePatterns) + + addSbtPlugin("com.ivantopo.sbt" %% "sbt-newrelic" % "0.0.1") + + addSbtPlugin("com.typesafe.sbt" % "sbt-aspectj" % "0.9.2") +``` +Specific configuration for NewRelic, in addittion to the previous configuration, you have to provide the new relic agent and configure a logger in application.conf file. + +**application.conf** + +```scala + akka { + loggers = ["akka.event.slf4j.Slf4jLogger","kamon.newrelic.NewRelicErrorLogger"] + + extensions = ["kamon.newrelic.NewRelic"] + actor { + debug { + unhandled = on + } + } + } +``` + +Examples +--- + +We have 2 project examples, first one without new relic agent, the second one with it. Both examples will start a spray server with akka and logback configuration. Adjust it to your needs. + +Follow the steps in order to clone the repository + +1. git clone git://github.com/kamon/kamon.git + +2. cd kamon + +For the first example run + +```bash + sbt "project kamon-uow-example" +``` + +For the second example run + +```bash + sbt "project kamon-new-relic-uow-example" +``` +In order to see how it works, you need to send a message to the rest service + +```bash + curl -v --header 'X-UOW:YOUR_TRACER_ID' -X GET 'http://0.0.0.0:6666/fibonacci' +``` + -- cgit v1.2.3 From f54932a51e56c36f032fcf6f5b78ba4fa46906dc Mon Sep 17 00:00:00 2001 From: Sergio Magnacco Date: Fri, 17 Jan 2014 17:28:43 -0300 Subject: Reordering documentation for akka and new relic --- site/src/jekyll/akka/index.md | 94 ++++++++++++++++++++++++++++++++++- site/src/jekyll/newrelic/index.md | 102 +++++++++++++++++++++++++++++++++++++- 2 files changed, 193 insertions(+), 3 deletions(-) (limited to 'site') diff --git a/site/src/jekyll/akka/index.md b/site/src/jekyll/akka/index.md index f40398d9..e9816dc0 100644 --- a/site/src/jekyll/akka/index.md +++ b/site/src/jekyll/akka/index.md @@ -1,7 +1,97 @@ --- -title: Akka Toolkit +title: kamon | Akka Toolkit | Documentation layout: default --- -First Steps +Documentation === + +Dependencies +--- + +Apart from scala library kamon depends on: + +- aspectj +- spray-io +- akka-actor + + +Installation +--- +Kamon works with SBT, so you need to add Kamon.io repository to your resolvers. + +Configuration +--- +Just like other products in the scala ecosystem, it relies on the typesafe configuration library. + +Since kamon uses the same configuration technique as [Spray](http://spray.io/documentation "Spray") / [Akka](http://akka.io/docs "Akka") you might want to check out the [Akka-Documentation-configuration](http://doc.akka.io/docs/akka/2.1.4/general/configuration.html "Akka Documentation on configuration") +. + +In order to see Kamon in action you need first to set up your sbt project. + +1. Add Kamon repository to resolvers + +```scala +"Kamon Repository" at "http://repo.kamon.io" +``` + +2. Add libraryDepenency + +```scala + "kamon" %% "kamon-spray" % "0.0.11", +``` + +In addition we suggest to create aspectj.sbt file and add this content + +```scala + import com.typesafe.sbt.SbtAspectj._ + + aspectjSettings + + javaOptions <++= AspectjKeys.weaverOptions in Aspectj +``` + +3. Add to your plugins.sbt in project folder (if you don't have one yet, create the file) and add the Kamon release to the resolver and the aspecj. + +```scala + resolvers += Resolver.url("Kamon Releases", + url("http://repo.kamon.io"))(Resolver.ivyStylePatterns) + + addSbtPlugin("com.typesafe.sbt" % "sbt-aspectj" % "0.9.2") +``` +**application.conf** + +```scala + akka { + loggers = ["akka.event.slf4j.Slf4jLogger"] + + actor { + debug { + unhandled = on + } + } + } +``` + +Examples +--- + +TODO: (to be published) The example will start a spray server with akka and logback configuration. Adjust it to your needs. + +Follow the steps in order to clone the repository + +1. git clone git://github.com/kamon/kamon.git + +2. cd kamon + +For the first example run + +```bash + sbt "project kamon-uow-example" +``` + +In order to see how it works, you need to send a message to the rest service + +```bash + curl -v --header 'X-UOW:YOUR_TRACER_ID' -X GET 'http://0.0.0.0:6666/fibonacci' +``` \ No newline at end of file diff --git a/site/src/jekyll/newrelic/index.md b/site/src/jekyll/newrelic/index.md index f320861e..675c8cf6 100644 --- a/site/src/jekyll/newrelic/index.md +++ b/site/src/jekyll/newrelic/index.md @@ -1,5 +1,5 @@ --- -title: NewRelic Module +title: kamon | NewRelic Module | Documentation layout: default --- @@ -36,3 +36,103 @@ libraryDependencies += "com.newrelic.agent.java" % "newrelic-api" % "3.1.0" NewRelic has [its own, separate licensing](http://newrelic.com/terms). +Documentation +=== + +Dependencies +--- + +Apart from scala library kamon depends on: + +- aspectj +- new relic agent +- spray-io +- akka-actor + + +Installation +--- +Kamon works with SBT, so you need to add Kamon.io repository to your resolvers. + +Configuration +--- +Just like other products in the scala ecosystem, it relies on the typesafe configuration library. If you are a new relic user, you will requiere to add a logger to the application.conf file + + +Since kamon uses the same configuration technique as [Spray](http://spray.io/documentation "Spray") / [Akka](http://akka.io/docs "Akka") you might want to check out the [Akka-Documentation-configuration](http://doc.akka.io/docs/akka/2.1.4/general/configuration.html "Akka Documentation on configuration") +. + +In order to see Kamon in action you need first to set up your sbt project. Add the following sbt dependencies to your project settings: + +1. Add Kamon repository to resolvers + +```scala +"Kamon Repository" at "http://repo.kamon.io" +``` + +2. Add libraryDepenency + +```scala + "kamon" %% "kamon-spray" % "0.0.11", + "kamon" %% "kamon-newrelic" % "0.0.11" +``` + +In addition we suggest to create aspectj.sbt file and add this content + +```scala + import com.typesafe.sbt.SbtAspectj._ + + aspectjSettings + + javaOptions <++= AspectjKeys.weaverOptions in Aspectj +``` + +3. Add to your plugins.sbt in project folder (if you don't have one yet, create the file) and add the Kamon release to the resolver and the aspecj. You need to add the sbt-newrelic plugin + +```scala + resolvers += Resolver.url("Kamon Releases", + url("http://repo.kamon.io"))(Resolver.ivyStylePatterns) + + addSbtPlugin("com.ivantopo.sbt" %% "sbt-newrelic" % "0.0.1") + + addSbtPlugin("com.typesafe.sbt" % "sbt-aspectj" % "0.9.2") +``` +In addittion, you have to provide the new relic agent and configure a logger in application.conf file. + +**application.conf** + +```scala + akka { + loggers = ["akka.event.slf4j.Slf4jLogger","kamon.newrelic.NewRelicErrorLogger"] + + extensions = ["kamon.newrelic.NewRelic"] + actor { + debug { + unhandled = on + } + } + } +``` + +Examples +--- + +The examples will start a spray server with akka, new relic and logback configuration. Adjust it to your needs in order to see the data in your new relic service. + +Follow the steps in order to clone the repository + +1. git clone git://github.com/kamon/kamon.git + +2. cd kamon + +run + +```bash + sbt "project kamon-new-relic-uow-example" +``` + +In order to see how it works, you need to send a message to the rest service + +```bash + curl -v --header 'X-UOW:YOUR_TRACER_ID' -X GET 'http://0.0.0.0:6666/fibonacci' +``` \ No newline at end of file -- cgit v1.2.3