Re: [akka-user] using Akka with Kamon...
Hello Albert, welcome to our community! Thanks for sharing! The thing about including the actor system name is true, but just from 0.4.0.. TS is using 0.3.5 and by then it wasn't necessary, regards! On Thu, May 14, 2015 at 11:15 PM Albert Gorski albgor...@gmail.com wrote: Hi, I'm also new in kamon but shuold't you specify actor-system name in the kamon configuration? You have : . actor = [ user/myActor* ] and it should be like that (see docs http://kamon.io/integrations/akka/actor-router-and-dispatcher-metrics/): akka-actor { includes = [ my-app/user/job-manager, my-app/user/worker-* ] excludes = [ my-app/system/**, my-app/user/worker-helper ]} hope it helps :) Cheers Albert -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] using Akka with Kamon...
TS, you mentioned that you got actor metrics working with the log reporter.. now, assuming the data is being sent to the docker container, maybe you have a little issue with the template filters included in the image? Please take a look at our gitter channel from this point: https://gitter.im/kamon-io/Kamon?at=55677f68f4f7d3367e67b125 On Fri, May 29, 2015 at 12:22 PM Ivan Topolnjak ivant...@gmail.com wrote: Hello Albert, welcome to our community! Thanks for sharing! The thing about including the actor system name is true, but just from 0.4.0.. TS is using 0.3.5 and by then it wasn't necessary, regards! On Thu, May 14, 2015 at 11:15 PM Albert Gorski albgor...@gmail.com wrote: Hi, I'm also new in kamon but shuold't you specify actor-system name in the kamon configuration? You have : . actor = [ user/myActor* ] and it should be like that (see docs http://kamon.io/integrations/akka/actor-router-and-dispatcher-metrics/ ): akka-actor { includes = [ my-app/user/job-manager, my-app/user/worker-* ] excludes = [ my-app/system/**, my-app/user/worker-helper ]} hope it helps :) Cheers Albert -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] using Akka with Kamon...
TS, The port where the docker image is listening for UDP packets is not the same as the HTTP port for the Grafana dashboard. Please make sure that both port 80 and 8125 are exposed and then point the kamon-statsd module to the appropriate mappings. If you run the image with this command: `docker run -d -p 80 -p 8125/udp kamon/grafana_graphite` and then use `docker ps` you can see an output like this: CONTAINER IDIMAGE COMMAND CREATED STATUS PORTS NAMES 4455e6ba5f07kamon/grafana_graphite:2.0 /usr/bin/supervisor 2 seconds ago Up 2 seconds8126/tcp, *0.0.0.0:49153-8125/udp*, 0.0.0.0:49153-80/tcp suspicious_carson There you will see in the ports section which host port is mapped to the 8125/udp port in your container. In that example it is 49153, so you should point kamon-statsd to something like 192.168.99.100 at port 49153 on your setup. Hope that it helps, regards! On Tue, May 12, 2015 at 8:31 PM TS test.tester1...@gmail.com wrote: On OSX using Docker. Running the container using Kitematic. I have tried with VM IP and the port My Kamon dashboard that launches has http://192.168.99.100:32768/#/dashboard/db/welcome I see Actor metrics using LogReporter. However on the dashboard, I just see 'No datapoints' My statsd settings are kamon{ statsd { hostname = 192.168.99.100 port = 32768 flush-interval = 2 second max-packet-size = 1024 bytes includes { actor = [ user/myActor* ] trace = [ * ] dispatcher = [ * ] } report-system-metrics = true } On Tuesday, May 12, 2015 at 5:31:09 AM UTC-7, Ivan Topolnjak wrote: Hello TS! May I ask what operating system are you using? Please remember that if you are running on Windows or OSX then the Docker image is not really started in your localhost but rather on a Virtualbox VM, you will need to find the IP address of that machine and poing tha kamon-statsd module to that IP.. regards! On Mon, May 11, 2015 at 10:50 PM TS test.te...@gmail.com wrote: Diego, Thanks, I have installed the docker container for grafana/graphite/statsd. However netstat does not show port 8125 to be open. Tried without host and port for statsd. However, I do see these messages while starting 2015-05-11 20:49:50,357 INFO supervisord started with pid 1 2015-05-11 20:49:51,360 INFO spawned: 'statsd' with pid 8 2015-05-11 20:49:51,362 INFO spawned: 'graphite-webapp' with pid 9 2015-05-11 20:49:51,365 INFO spawned: 'nginx' with pid 10 2015-05-11 20:49:51,367 INFO spawned: 'carbon-cache' with pid 11 2015-05-11 20:49:51,369 INFO spawned: 'elasticsearch' with pid 13 2015-05-11 20:49:51,373 INFO spawned: 'dashboard_loader' with pid 14 2015-05-11 20:49:52,428 INFO success: statsd entered RUNNING state, process has stayed up for than 1 seconds (startsecs) 2015-05-11 20:49:52,428 INFO success: graphite-webapp entered RUNNING state, process has stayed up for than 1 seconds (startsecs) 2015-05-11 20:49:52,428 INFO success: nginx entered RUNNING state, process has stayed up for than 1 seconds (startsecs) 2015-05-11 20:49:52,428 INFO success: carbon-cache entered RUNNING state, process has stayed up for than 1 seconds (startsecs) 2015-05-11 20:49:52,428 INFO success: elasticsearch entered RUNNING state, process has stayed up for than 1 seconds (startsecs) 2015-05-11 20:49:52,428 INFO success: dashboard_loader entered RUNNING state, process has stayed up for than 1 seconds (startsecs) I can see the dashboard, However no metrics are shown. It says no data points. Any help is appreciated. I have this in my configuration kamon { #log-reporter { #need this as a placeholder #} metrics { filters = [ { actor { includes = [ user/* ] excludes = [ system/* ] } }, { trace { includes = [ * ] excludes = [] } } ] tick-interval = 1 second } # ~~ statsd { hostname = 127.0.0.1 port = 8125 flush-interval = 1 second max-packet-size = 1024 bytes includes { actor = [ * ] trace = [ * ] dispatcher = [ * ] } report-system-metrics = true } On Saturday, May 9, 2015 at 1:58:00 AM UTC-7, Diego Parra wrote: Hi, you can try with: kamon { ... statsd { ... report-system-metrics = true ... }} Cheers, Diego. On Fri, May 8, 2015 at 10:27 PM, TS test.te...@gmail.com wrote: Never mind. I was missing some configuration. I do see kamon.logreporter.LogReporterSubscriber : No user metrics reported I need to get the kamon configuration for actorCount etc. On Friday, May 8, 2015 at 6:16:44 PM UTC-7, TS wrote: OK. Good news: Using
Re: [akka-user] Akka with org.apache.log4j.MDC
Hello guys! As Yann said, the only Kamon thing that officially can be put in your log patterns is the trace token via the provided converter, but, Kamon has something called TraceLocal Storage which is basically a map where you can put info and retrieve later on wherever you have access to the same TraceContext, including support for providing key/value pairs that should be available to MDC. We did not include any documentation on that feature because it's API is a bit ugly and certainly not Java-friendly and we will work on improving that soon [1], but if you want to give a try to the current implementation then take a look at the hidden docs on that [2]. Let us know if you need any further assistance, regards! [1] https://github.com/kamon-io/Kamon/issues/196 [2] http://master.kamon.io/integrations/logback/mdc-in-an-asyncronous-environment/ On Tue, May 12, 2015 at 1:07 PM Yann Simon yann.simon...@gmail.com wrote: Le mar. 12 mai 2015 à 12:31, bysen...@gmail.com a écrit : Thanks a lot Yann! This is super cool :D. I'm still browsing the documents, would it be possible to use other conversionRule aside from *traceToken* conversionRule conversionWord=traceToken converterClass=kamon.trace.logging.LogbackTraceTokenConverter/ Yes, I think so but I have not checked it myself. But it seems quite easy: just write your own converter. I am planning to put my requestId in the metaData of the traceContext but I can't find the docs on how to modify the logback.xml for rules other than traceToken class RequestHandler() extends Actor with ActorLogging { def receive: Receive = { case req: TypeA = val context = Kamon.tracer.newContext(req.requestId) context.addMetada(requestId, req.requestId) context.addMetada(otherKeyId, req.otherKeyId) Tracer.withNewContext(context){ log.debug(RECEIVE req typeA) val thirdPartyA = context.ActorOf(thirdPartyA.props) thirdPartyA ! req } } } logback.xml configuration conversionRule conversionWord=requestId converterClass= kamon.trace.logging.LogbackTraceTokenConverter/ conversionRule conversionWord=otherKeyId converterClass= kamon.trace.logging.LogbackTraceTokenConverter/ conversionRule conversionWord=name converterClass= kamon.trace.logging.LogbackTraceTokenConverter/ appender name=STDOUT class=ch.qos.logback.core.ConsoleAppender filter class=ch.qos.logback.classic.filter.ThresholdFilter levelDEBUG/level /filter encoder pattern%date{ISO8601} [%-5level] [%messageId] [% iccid] [%name] %logger{36} %X{sourceThread} - %msg%n/pattern /encoder /appender ... /configuration [%messageId] [%iccid] [%name] still output the data for traceToken instead of the value I assigned for the name and metadata of the context I personally put the request ID in the context token, as the existing converter is implemented only for the context token. If we want to access different data, you need a different converter class for each of your conversionWord. Also, have you encountered this while using Kamon during startup? [error] objc[5646]: Class JavaLaunchHelper is implemented in both /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre/bin/java and /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre/lib/libinstrument.dylib. One of the two will be used. Which one is undefined. Yes, I see that. It has to do with Aspectj. I can recommend you to post your questions on the kamon users mailing list, they are very friendly and reactive. On Tuesday, May 12, 2015 at 2:30:39 PM UTC+8, Yann Simon wrote: another alternative is to use http://kamon.io/ Use a trace context instead of MDC, and the trace context is propagated: http://kamon.io/integrations/akka/automatic-trace-context-propagation/ Then, in your log configuration, use converter to access the data you put in the trace context: http://kamon.io/integrations/logback/trace-token-converter/ Le mar. 12 mai 2015 à 08:18, byse...@gmail.com a écrit : Thanks Nils, I am planning to use this approach now, but how do you keep context between actors if you are using third party lib actors? I can't modify them to include the context in their messages. class RequestHandler() extends Actor with akka.actor. DiagnosticActorLogging{ override def mdc(currentMessage: Any): MDC = { currentMessage match { case req: TraitWithRequestId = Map(requestId - req.id) case _ = Map() } } def receive: Receive = { case req: TypeA =//TypeA extends TraitWithRequestId log.debug(RECEIVE req typeA) //logged with correct [requestId - someRandom] val thirdPartyA = context.ActorOf(thirdPartyA.props) thirdPartyA ! req case thirdPartyResponse =
Re: [akka-user] using Akka with Kamon...
Hello TS! May I ask what operating system are you using? Please remember that if you are running on Windows or OSX then the Docker image is not really started in your localhost but rather on a Virtualbox VM, you will need to find the IP address of that machine and poing tha kamon-statsd module to that IP.. regards! On Mon, May 11, 2015 at 10:50 PM TS test.tester1...@gmail.com wrote: Diego, Thanks, I have installed the docker container for grafana/graphite/statsd. However netstat does not show port 8125 to be open. Tried without host and port for statsd. However, I do see these messages while starting 2015-05-11 20:49:50,357 INFO supervisord started with pid 1 2015-05-11 20:49:51,360 INFO spawned: 'statsd' with pid 8 2015-05-11 20:49:51,362 INFO spawned: 'graphite-webapp' with pid 9 2015-05-11 20:49:51,365 INFO spawned: 'nginx' with pid 10 2015-05-11 20:49:51,367 INFO spawned: 'carbon-cache' with pid 11 2015-05-11 20:49:51,369 INFO spawned: 'elasticsearch' with pid 13 2015-05-11 20:49:51,373 INFO spawned: 'dashboard_loader' with pid 14 2015-05-11 20:49:52,428 INFO success: statsd entered RUNNING state, process has stayed up for than 1 seconds (startsecs) 2015-05-11 20:49:52,428 INFO success: graphite-webapp entered RUNNING state, process has stayed up for than 1 seconds (startsecs) 2015-05-11 20:49:52,428 INFO success: nginx entered RUNNING state, process has stayed up for than 1 seconds (startsecs) 2015-05-11 20:49:52,428 INFO success: carbon-cache entered RUNNING state, process has stayed up for than 1 seconds (startsecs) 2015-05-11 20:49:52,428 INFO success: elasticsearch entered RUNNING state, process has stayed up for than 1 seconds (startsecs) 2015-05-11 20:49:52,428 INFO success: dashboard_loader entered RUNNING state, process has stayed up for than 1 seconds (startsecs) I can see the dashboard, However no metrics are shown. It says no data points. Any help is appreciated. I have this in my configuration kamon { #log-reporter { #need this as a placeholder #} metrics { filters = [ { actor { includes = [ user/* ] excludes = [ system/* ] } }, { trace { includes = [ * ] excludes = [] } } ] tick-interval = 1 second } # ~~ statsd { hostname = 127.0.0.1 port = 8125 flush-interval = 1 second max-packet-size = 1024 bytes includes { actor = [ * ] trace = [ * ] dispatcher = [ * ] } report-system-metrics = true } On Saturday, May 9, 2015 at 1:58:00 AM UTC-7, Diego Parra wrote: Hi, you can try with: kamon { ... statsd { ... report-system-metrics = true ... }} Cheers, Diego. On Fri, May 8, 2015 at 10:27 PM, TS test.te...@gmail.com wrote: Never mind. I was missing some configuration. I do see kamon.logreporter.LogReporterSubscriber : No user metrics reported I need to get the kamon configuration for actorCount etc. On Friday, May 8, 2015 at 6:16:44 PM UTC-7, TS wrote: OK. Good news: Using 2.3.10, no errors. However, I am using kamon log reporter. I do not see any actor metrics on my logs. Should I enable something on application.conf? On Friday, May 8, 2015 at 4:40:14 PM UTC-7, Ivan Topolnjak wrote: Oh, that can be a problem! We have not tested Kamon with 2.4 yet and probably the issue you are facing is due to Kamon's bytecode being liked to certain Akka internals that changed between 2.3 and 2.4. Is it possible for you to use Akka 2.3? I will let you know when we get ready to support Akka 2.4, regards! On Sat, May 9, 2015 at 1:20 AM TS test.te...@gmail.com wrote: BTW, I am using akka 2.4-SNAPSHOT On Friday, May 8, 2015 at 3:54:41 PM UTC-7, TS wrote: This is what I have in the pom dependency groupIdio.kamon/groupId artifactIdkamon-core_2.11/artifactId version0.3.5/version /dependency dependency groupIdio.kamon/groupId artifactIdkamon-log-reporter_2.11/artifactId version0.3.5/version /dependency plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-surefire-plugin/artifactId version2.18.1/version configuration argLine-javaagent:path to aspectjweaver -1.7.4.jar/argLine /configuration /plugin and in my application.conf extensions = [kamon.metric.Metrics] a test like will cause the error to happen. @Test public void testForFoo() { final TestActorRefFooActor ref = TestActorRef.create( system, Props.create(FooActor.class), testFoo); Object obj = ref .underlyingActor().testFoo(ByteString.fromArray(abc.getBytes())); } On Friday, May 8, 2015 at 4:47:36 AM UTC-7, Ivan Topolnjak wrote: Hello TS, I have been
Re: [akka-user] using Akka with Kamon...
Hello TS, I have been trying to find some additional info regarding this issue, but couldn't find anything yet :(... is it possible for you to provide us a little example to reproduce the issue? On Fri, May 8, 2015 at 2:59 AM TS test.tester1...@gmail.com wrote: Ivan, Any updates on this. Thanks in advance. On Wednesday, May 6, 2015 at 11:05:54 AM UTC-7, TS wrote: Ivan, Sorry about the cross post. I was not sure where I should post. I am using Kamon 0.3.5 On Wednesday, May 6, 2015 at 5:51:27 AM UTC-7, Ivan Topolnjak wrote: Hello TS! I just replied to you other email, please disregard that thread and post your answer here.. what Kamon version are you using? On Wed, May 6, 2015 at 3:07 AM TS test.te...@gmail.com wrote: I just started using Kamon. I am getting an error while weaving (This happens when my tests run. My surefire plugin has argLine with javaagent pointing to aspectjweaver.jar Any words of wisdom would be appreciated. Thanks in advance, TS java.lang.Exception: Unexpected exception, expectedjava.lang.ClassCastException but wasjava.lang.IncompatibleClassChangeError at akka.instrumentation.ActorCellInstrumentation.afterCreation(ActorCellInstrumentation.scala:42) at akka.actor.ActorCell.init(ActorCell.scala:397) at akka.actor.LocalActorRef.newActorCell(ActorRef.scala:320) at akka.actor.LocalActorRef.init(ActorRef.scala:316) at akka.actor.LocalActorRefProvider$$anon$1.init(ActorRefProvider.scala:574) at akka.actor.LocalActorRefProvider.rootGuardian$lzycompute(ActorRefProvider.scala:574) at akka.actor.LocalActorRefProvider.rootGuardian(ActorRefProvider.scala:573) at akka.actor.LocalActorRefProvider.init(ActorRefProvider.scala:628) at akka.actor.ActorSystemImpl.liftedTree2$1(ActorSystem.scala:663) at akka.actor.ActorSystemImpl._start$lzycompute(ActorSystem.scala:660) at akka.actor.ActorSystemImpl._start(ActorSystem.scala:660) at akka.actor.ActorSystemImpl.start(ActorSystem.scala:676) at akka.actor.ActorSystem$.apply(ActorSystem.scala:143) at akka.actor.ActorSystem$.apply(ActorSystem.scala:110) at akka.actor.ActorSystem$.create(ActorSystem.scala:58) at akka.actor.ActorSystem.create(ActorSystem.scala:1) -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+...@googlegroups.com. To post to this group, send email to akka...@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] using Akka with Kamon...
Oh, that can be a problem! We have not tested Kamon with 2.4 yet and probably the issue you are facing is due to Kamon's bytecode being liked to certain Akka internals that changed between 2.3 and 2.4. Is it possible for you to use Akka 2.3? I will let you know when we get ready to support Akka 2.4, regards! On Sat, May 9, 2015 at 1:20 AM TS test.tester1...@gmail.com wrote: BTW, I am using akka 2.4-SNAPSHOT On Friday, May 8, 2015 at 3:54:41 PM UTC-7, TS wrote: This is what I have in the pom dependency groupIdio.kamon/groupId artifactIdkamon-core_2.11/artifactId version0.3.5/version /dependency dependency groupIdio.kamon/groupId artifactIdkamon-log-reporter_2.11/artifactId version0.3.5/version /dependency plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-surefire-plugin/artifactId version2.18.1/version configuration argLine-javaagent:path to aspectjweaver-1.7.4.jar/argLine /configuration /plugin and in my application.conf extensions = [kamon.metric.Metrics] a test like will cause the error to happen. @Test public void testForFoo() { final TestActorRefFooActor ref = TestActorRef.create(system, Props.create(FooActor.class), testFoo); Object obj = ref.underlyingActor().testFoo(ByteString.fromArray( abc.getBytes())); } On Friday, May 8, 2015 at 4:47:36 AM UTC-7, Ivan Topolnjak wrote: Hello TS, I have been trying to find some additional info regarding this issue, but couldn't find anything yet :(... is it possible for you to provide us a little example to reproduce the issue? On Fri, May 8, 2015 at 2:59 AM TS test.te...@gmail.com wrote: Ivan, Any updates on this. Thanks in advance. On Wednesday, May 6, 2015 at 11:05:54 AM UTC-7, TS wrote: Ivan, Sorry about the cross post. I was not sure where I should post. I am using Kamon 0.3.5 On Wednesday, May 6, 2015 at 5:51:27 AM UTC-7, Ivan Topolnjak wrote: Hello TS! I just replied to you other email, please disregard that thread and post your answer here.. what Kamon version are you using? On Wed, May 6, 2015 at 3:07 AM TS test.te...@gmail.com wrote: I just started using Kamon. I am getting an error while weaving (This happens when my tests run. My surefire plugin has argLine with javaagent pointing to aspectjweaver.jar Any words of wisdom would be appreciated. Thanks in advance, TS java.lang.Exception: Unexpected exception, expectedjava.lang.ClassCastException but wasjava.lang.IncompatibleClassChangeError at akka.instrumentation.ActorCellInstrumentation.afterCreation(ActorCellInstrumentation.scala:42) at akka.actor.ActorCell.init(ActorCell.scala:397) at akka.actor.LocalActorRef.newActorCell(ActorRef.scala:320) at akka.actor.LocalActorRef.init(ActorRef.scala:316) at akka.actor.LocalActorRefProvider$$anon$1.init(ActorRefProvider.scala:574) at akka.actor.LocalActorRefProvider.rootGuardian$lzycompute(ActorRefProvider.scala:574) at akka.actor.LocalActorRefProvider.rootGuardian(ActorRefProvider.scala:573) at akka.actor.LocalActorRefProvider.init(ActorRefProvider.scala:628) at akka.actor.ActorSystemImpl.liftedTree2$1(ActorSystem.scala:663) at akka.actor.ActorSystemImpl._start$lzycompute(ActorSystem.scala:660) at akka.actor.ActorSystemImpl._start(ActorSystem.scala:660) at akka.actor.ActorSystemImpl.start(ActorSystem.scala:676) at akka.actor.ActorSystem$.apply(ActorSystem.scala:143) at akka.actor.ActorSystem$.apply(ActorSystem.scala:110) at akka.actor.ActorSystem$.create(ActorSystem.scala:58) at akka.actor.ActorSystem.create(ActorSystem.scala:1) -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+...@googlegroups.com. To post to this group, send email to akka...@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+...@googlegroups.com. To post to this group, send email to akka...@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka
Re: [akka-user] using Akka with Kamon...
Hello TS! I just replied to you other email, please disregard that thread and post your answer here.. what Kamon version are you using? On Wed, May 6, 2015 at 3:07 AM TS test.tester1...@gmail.com wrote: I just started using Kamon. I am getting an error while weaving (This happens when my tests run. My surefire plugin has argLine with javaagent pointing to aspectjweaver.jar Any words of wisdom would be appreciated. Thanks in advance, TS java.lang.Exception: Unexpected exception, expectedjava.lang.ClassCastException but wasjava.lang.IncompatibleClassChangeError at akka.instrumentation.ActorCellInstrumentation.afterCreation(ActorCellInstrumentation.scala:42) at akka.actor.ActorCell.init(ActorCell.scala:397) at akka.actor.LocalActorRef.newActorCell(ActorRef.scala:320) at akka.actor.LocalActorRef.init(ActorRef.scala:316) at akka.actor.LocalActorRefProvider$$anon$1.init(ActorRefProvider.scala:574) at akka.actor.LocalActorRefProvider.rootGuardian$lzycompute(ActorRefProvider.scala:574) at akka.actor.LocalActorRefProvider.rootGuardian(ActorRefProvider.scala:573) at akka.actor.LocalActorRefProvider.init(ActorRefProvider.scala:628) at akka.actor.ActorSystemImpl.liftedTree2$1(ActorSystem.scala:663) at akka.actor.ActorSystemImpl._start$lzycompute(ActorSystem.scala:660) at akka.actor.ActorSystemImpl._start(ActorSystem.scala:660) at akka.actor.ActorSystemImpl.start(ActorSystem.scala:676) at akka.actor.ActorSystem$.apply(ActorSystem.scala:143) at akka.actor.ActorSystem$.apply(ActorSystem.scala:110) at akka.actor.ActorSystem$.create(ActorSystem.scala:58) at akka.actor.ActorSystem.create(ActorSystem.scala:1) -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] ANNOUNCE: Akka Streams HTTP 1.0-M3
Hello there! It's really exciting to see where the Akka Streams HTTP projects are heading, congrats to the team and to all contributors for such a great gift to the community. Now, I know you get asked for WebSockets support a lot, but this announcement made me wonder: Is the first release of akka-http going to include WebSockets support? I always thought that there was going to be a first release that was feature wise equal to Spray and then afterwards another release with WebSockets support, but the fact that it is the next task on the HTTP front seems quite interesting! Hope you have good news on this matter :D. On Fri Feb 06 2015 at 4:05:23 PM Roland Kuhn goo...@rkuhn.info wrote: And in the rush of course I forgot one thing: Thanks a lot to Greg Beech for adding the “Age” and “Expires” headers to our HTTP model! 6 feb 2015 kl. 15:56 skrev Roland Kuhn goo...@rkuhn.info: Dear hakkers, it has been over a month, so we figured that another milestone of our Streams HTTP projects is in order. The Christmas break was a bit longer on the HTTP side (i.e. not so many changes there), so most of the work went into streams: - consistently use the word “failure” instead of “error” in the API (see here http://www.reactivemanifesto.org/glossary#Failure for the definitions) - rename all materializing actions such that they start with “run” (e.g. “runForeach”) to distinguish them from non-materializing ones - rename ActorBasedFlowMaterializer to ActorFlowMaterializer (which now uses ActorFlowMaterializerSettings) - make use of DeadLetterSuppression to avoid pointless warning messages, also sanitize failure logging in stream stages to avoid duplicates - fix a few issues with StreamTcp concerning connection termination - last but certainly not least: translate the Scala reference documentation to Java (cookbook still missing at this point) *What next?* When starting to work on the integration for our SslTlsStage we encountered some difficulties with the current internal design—in fact this reminded us that we had not yet implemented some of the semantics of reusing flow topology blueprints within larger graphs. This triggered a rewrite of the internal representation of FlowGraph that is currently under way. While doing this we discovered another difficulty related to extracting materialized values (like the local socket address for a server binding, or a completion future for a Sink) when reusing the same blueprint multiple times within a larger graph, and the solution for this needs an API change: version 1.0-M4 (to be released in two weeks time) will introduce one more type parameter for all graph elements that materialize to a value, namely the type of that value. Composition operators and graph constructors (like Source(), FlowGraph() and Sink()) will require explicit functions that describe how these materialized values are composed, and overall materialization of a RunnableFlow will then yield only the overall (composed) value instead of a MaterializedMap. This should be safer and more intuitive to use than what we have currently. After this change we plan on keeping the API stable (with the caveat that future enlightenment might reveal flaws yet unknown). On the HTTP front the next task is to start the implementation of WebSockets, and once TLS is available on the Streams layer we will hook that up into HTTP as well. All your feedback (on this list and on github) has been very helpful in pushing Akka Streams HTTP forward, please stay awesome :-) Regards, *Dr. Roland Kuhn* *Akka Tech Lead* Typesafe http://typesafe.com/ – Reactive apps on the JVM. twitter: @rolandkuhn http://twitter.com/#!/rolandkuhn -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. *Dr. Roland Kuhn* *Akka Tech Lead* Typesafe http://typesafe.com/ – Reactive apps on the JVM. twitter: @rolandkuhn http://twitter.com/#!/rolandkuhn -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to
[akka-user] Re: Kamon metrics on Akka actors in New Relic
Vlad, First, at the time this posting, we (the Kamon team) do not offer any kind of payed support to our users, we do as much as we can to reply to all user enquiries/concerns and address the bugs and enhancements reported by the community in a open and free manner and we hope to continue doing so. What I meant was that the feature of creating a Custom Dashboard with New Relic is only available to New Relic customers with Pro and Enterprise subscriptions (payed) and not to customers with Lite subscriptions (free). So, if we get enough interest in our user base to get actor metrics data into New Relic, even knowing that not all New Relic users will be able to see it, we can do the efforts to make it real. If you feel like it, please fill an issue in our repo and make your fellow Kamon users show their support for that feature there :). -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
[akka-user] Re: Kamon metrics on Akka actors in New Relic
** This post was forwarded to kamon-user (https://groups.google.com/forum/#!topic/kamon-user/fyeHDR7G0AU), here is a copy of what I replied over there, just for the record. Hello guys! The reason for not seeing the actor metrics in New Relic is that we are not reporting them at all :s... the information about traces and http client calls was clearly fitted into the web transactions and external services in the New Relic model and it was kind of easy to put that information there, but what would we do with actors or dispatchers? there is no clear place to put it in the UI. We might try to report actor/dispatcher information as custom metrics in the future, but since custom metrics are only available to paying customers we don't feel like putting a lot of efforts on that. Regardless of that, we are open to contributions from people that want to see that happen :). -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
[akka-user] Re: [ANNOUNCE] Akka Streams HTTP 1.0 MILESTONE 1
Congratulations guys! I'm super excited to see this out and to start playing with it :), keep rocking! -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] Manifest Event Sourcing Application's Performance
Prakhyat, for the record: Kamon does provide metrics on number of HTTP requests, average, min, max, counts per response status code and more, we don't have metrics for bytes transferred.. are you using Spray or Play for HTTP? we do support them! When we talk about Trace Metrics we talk about the invocation of a given functionality in your app and that usually means a HTTP request to your Play App or your Spray API, if you need help on that please let us know in the Kamon mailing list, best regards! On Thu, Sep 11, 2014 at 10:10 AM, Prakhyat Mallikarjun prakhyat...@gmail.com wrote: Hi Todd, Thanks. I have worked on Kamon. Already deployed it and integrated with the application successfully. But Kamon will give only the metrics of the applications specific to akka actors. Kamon will not provide performance metrics when application goes through load testing. Performance metrics like, 1. Number of requests to system 2. Average time for processing per request URI 3. Min time per request URI 4. Max time per request URI 5. % Errors 6. Throughput 7. Bytes/sec -Prakhyat M M On Thursday, 11 September 2014 18:01:58 UTC+5:30, Todd Nist wrote: @Prakhyat, Would a tool lik http://kamon.io help you out with gathering stats for performance analysis. There is a good post here http://mukis.de/pages/monitoring-akka-with-kamon/ on using it with Akka and the docker container which provides Graphite(statsd backend), Grafana (Graphite Dashboard), Elasticsearch (Graphan Storage). One can configure what should be recorded through the *application.conf* and adding the *kamon* configuration key. The post above defines the integration and configuration very well as does the Kamon.io site. HTH. -Todd On Wednesday, September 10, 2014 8:31:12 AM UTC-4, Prakhyat Mallikarjun wrote: Konard, I agree with you effort is required. Glad analysis has narrowed down to one solution of using log. As always your points are really helpful. Thanks again. -Prakhyat M M On Wednesday, 10 September 2014 17:17:15 UTC+5:30, Konrad Malawski wrote: It would be easier to perform this using log analysis. [Prakhyat] Yes. We have this in mind as one of the alternative. But it wont provide performance metrics. I don’t agree. You would get SOME performance metrics this way – the time from start of request to various stages of your processing pipeline. You can graph and analyse this. Relate these numbers with the load generated during a concrete test run etc. You can also see how it relates to your “200” response times etc etc. There certainly is value and data to be gained from such benchmarks. As always, to perform a proper benchmark you need to put some effort into it. Hope this point of view helps. -- Konrad 'ktoso' Malawski hAkker @ typesafe http://akka.io -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
[akka-user] Re: ANNOUNCE: First akka-http-core preview and updated akka-stream preview
Congratulations guys! I had the chance to look trough the code a few days ago and was really surprised with how simple and concise it is, akka-http is (as Spray is also) a very interesting piece of engineering, keep up with the awesome work! -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] Is there any to measure the sending time in actor
Lee, can you please elaborate a bit more on what timing do you want to measure?, if I literally read your post, it seems like you want to measure the time taken from the moment in which you start the call to tell on a ActorRef until the moment the message has been successfully added to that actor's mailbox. That is something you can achieve easily with any decent profiler, but I guess that what you really want to measure is how long did it take to process the Status Update functionality in your app, and that functionality requires sending messages between a couple actors... let us know exactly what you need and we will be happy to assist, best regards! -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] Tutorial on how to get started with Scala and Akka
Heiko, Hope you can help me with this little doubt.. if using the non deprecated version of Props.apply, shouldn't we create actors by doing `actorOf(Props[SomeActor](new SomeActor))`?, it is a bit odd to mention the type twice, but it seems to be the way to go to ensure compatibility with future versions where the non parametrized version of Props.apply is gone. Thanks in advance! On Mon, Mar 31, 2014 at 9:57 AM, Heiko Seeberger heiko.seeber...@gmail.comwrote: Nice! Thanks for putting it together. Some comments: - Don't ever block inside an actor: Don't use `Thread.sleep`, but better show the scheduler service - It's better to not use `actorOf(Props[SomeActor])`, but `actorOf(Props(new SomeActor))` instead, because the latter is refactoring safe and performs better (no reflection) - Inside of an actor, access the actor system via `context.system`, not `HowdyAkka.system.shutdown` - You might want to use `system.awaitTermination()` at the end of your `App` - If you want to teach Scala, follow the Scala Style Guide, i.e. write `system.shutdown()` with parentheses Thanks Heiko On Mon, Mar 31, 2014 at 1:56 PM, Robert Sosinski robert.sosin...@reactive.io wrote: Hello Fellow Akka Users, Just wanted to share a new tutorial about how to get started with Akka. I'm sure everyone here is familiar with the basics; but it might help those who are getting started to compile their first Akka app. *http://www.reactive.io/tips/2014/03/28/getting-started-with-actor-based-programming-using-scala-and-akka/ http://www.reactive.io/tips/2014/03/28/getting-started-with-actor-based-programming-using-scala-and-akka/* Feel free to chime in with your comments. Hope it helps to get more developers onto Akka ;) Thanks, and happy concurrent programming! -Robert -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Heiko Seeberger Twitter: @hseeberger Blog: blog.heikoseeberger.name -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout. -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] Production monitoring tools?
Roland, I certainly feel like moving towards bounded queues as the rule rather than the exception is the way to go. Setting reasonable bounds is a task requiring deep knowledge of the application domain, actor/dispatcher dynamics and running platforms (just to name a few), and it is difficult to propose a checklist that will guide people through the optimal bounds for their case, but I guess that with time and more information taken out of live systems the community will develop a better understanding on this topics and it will be a lot easier and common to set bounds. Maybe introducing bounds in terms of low-latency and performance might rise more interest in the topic. Your proposal about firing monitoring events upon reaching some mailbox size watermarks seems pretty neat, we will certainly consider adding some of that goodness into Kamon :), is there any ticket tracking that feature in assembla/github?, maybe we can give a hand on adding this feature to akka as well. Patrick, thanks for mentioning LoggingMailbox, it certainly looks pretty nice and people can use it right away, will keep it on my toolbox. have a nice day guys, best regards! On Thu, Mar 27, 2014 at 5:43 AM, Patrik Nordwall patrik.nordw...@gmail.comwrote: The LoggingMailbox https://gist.github.com/patriknw/5946678 has helped me debugging bottlenecks many times. /Patrik On Thu, Mar 27, 2014 at 8:22 AM, Roland Kuhn goo...@rkuhn.info wrote: Thanks for sharing, this will be very useful for people searching this forum! Regards, Roland 26 mar 2014 kl. 20:55 skrev Edward Steel edward.st...@gmail.com: We're using a combination of things at work. Sensu when alerts are needed and graphite/statsd for collecting, displaying, monitoring metrics. Statsd's pretty powerful, and graphite does the job as far as powering dashboards (there are some alternatives though). More specifically: 1) java.lang.management._ + statsd -- an actor schedules itself at the rate we need to report heap size and gc time. We also monitor sub-jvm system stats in statsd using diamond. 2) Statsd, ad-hoc as needed. Mailbox size isn't really accessible, and trying to monitor it is discouraged ( http://letitcrash.com/post/17707262394/why-no-mailboxsize-in-akka-2). Instead you can monitor time between the message being sent from one actor and worked on by another (by injecting timestamps in the message), or you can monitor all requests and see if there's a time lag between reducing the load on the sender and a corresponding reduction appearing on the receiver (while it chews through its mailbox). However if you monitor message count and various timings, especially if you measure timing for specific components and compare them, you can generally see bottlenecks pretty clearly. 3) Statsd again. We use it a ton. And since the client is nio/udp and supports sampling, we never see a problem with overhead. The worst you'll see is strange graphs if you overload graphite itself. You're very welcome to try our statsd client. It's on github at github.com/hootsuite/statsd-client . It's pretty much a wrapper around etsy's client with some scala niceties and typesafe config. It's missing some examples but is pretty straightforward (see https://github.com/hootsuite/statsd-client/blob/master/src/main/scala/com/hootsuite/statsd/StatsdReporting.scala ) Would always love to hear of better solutions! I've heard vague rumours typesafe are working on something for production. Cheers, Edd On 26 March 2014 11:48, Chris Toomey ctoo...@gmail.com wrote: Are any of you folks in this group running production Akka systems, and if so, which of the following classes of metrics are you collecting and monitoring? 1) Generic JVM metrics 2) Generic Akka metrics (mailbox sizes, message rates, etc.) 3) Application-specific metrics If you're collecting/monitoring generic Akka metrics, how are you doing it? If you're not, is it because 1) and 3) are sufficient, or because you've not found a good way to do 2)? Thanks for any guidance. Chris On Tuesday, March 25, 2014 7:25:38 AM UTC-7, Chris Toomey wrote: We're developing our first Akka application and are thus new to the larger ecosystem. I've spent the last hour or so searching for Akka monitoring tools but haven't come across much of anything as far as production monitoring tools. I see that Typesafe Console is aimed at development time and not recommended for production usage, and I've seen a few things on github, but that's about it. What tools are folks using or would you recommend using to monitor production Akka applications for Akka-specific metrics like message rates, mailbox sizes, actor counts, etc.? thx, Chris -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to
Re: [akka-user] Re: Production monitoring tools?
Chris, sorry, I didn't express myself correctly, what I wanted to say is that not having constant time .size() implementations by default doesn't mean that we shouldn't monitor mailbox sizes, but instead find a alternative, efficient way to get those numbers, which in my opinion are very important when monitoring akka actors. Glad to know you are interested in Kamon, hope you find it useful and that this answer clarifies your doubt, best regards! -- Read the docs: http://akka.io/docs/ Check the FAQ: http://doc.akka.io/docs/akka/current/additional/faq.html Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
Re: [akka-user] Play, Spray, ...
Charlie, doing DB calls in Spray has nothing special or different from what you would do with plain Akka, Play or any other toolkit. Certainly, there is a preference for using async and non-blocking drivers, but that is not a requisite. What really matters in case you are doing blocking calls to a database (using JDBC, for example) is that you set up a dedicated dispatcher (like a thread-pool) to be used by those blocking tasks. That way the blocking part of your app wont eat all the threads and starve the rest of the components. With regards to managing and monitoring, of course the first option would be the Typesafe Console [1], built by the same people working in Akka/Play. Also, there is a project we are working on right now [2], focused in Akka and Spray (Play support might arrive in the future).. we are in the process of tidying up the basic set of features and writing docs for our first public release which will get out very soon. Last, but not least, there is the monitor [3] tool for Akka created by the Cake Solutions team (correct me if I'm wrong!) which is also open source. Hope this info helps! best regards!. [1] http://typesafe.com/platform/runtime/console [2] http://kamon.io [3] https://github.com/eigengo/monitor On Tue, Jan 21, 2014 at 11:27 AM, Pascal Voitot Dev pascal.voitot@gmail.com wrote: I'm not an expert in Spray in prod (more Play experience) but there are a few articles you can find on Google on how to monitor an Akka app... You've got Typesafe Console naturally which is specifically dedicated to this and a few tools to add on top of Akka! Other people might have far better advices than mine on this point! Pascal On Tue, Jan 21, 2014 at 3:18 PM, charlie robert reefed...@gmail.comwrote: Oh, yes, could you also mention about management and monitoring with Spray, as well? - charlie On Jan 21, 2014, at 7:15 AM, charlie robert reefed...@gmail.com wrote: Hi pascal, This sounds promising. However, our kafka consumers need to do some DB calls, but in a high volume sort of way. Could you say a few words about database interactions in Spray? thanks, charlie On Jan 21, 2014, at 1:03 AM, Pascal Voitot Dev pascal.voitot@gmail.com wrote: Yes clearly you can get rid of servlet stuff and go to frameworks like Play or Spray! Spray is more low-level and is better if you want pure REST (more is possible too but it's more manual than Play). It's also 100% actor based with akka.io Play is full-stack and can help if you want more than just REST (it provides everything to build web apps)... It uses Netty for now as network layer (spray will be integrated later) and doesn't rely on actors for network part (you can use actors in your application) Both are performant. In terms of connection pooling, you won't manage it anymore as with servlets as you'll enter the world of stateless/non-blocking/async where you have a very few threads switching very quickly instead of a big pool like servlets. So you have to stop thinking about sticky sessions, stateful sessions and blocking code etc... But it brings real benefits, you'll see ;) pascal On Tue, Jan 21, 2014 at 3:28 AM, Robert Withers reefed...@gmail.comwrote: Which Akka-based REST servers include support for connection pooling, without a Servlet 3.0 container? It may be fun to ditch Tomcat. We had an issue where multiple jars were stomping on each other and the WAR was exiting with no information. 2 weeks of team investigation finally identified the setting that needed to change…turn off string-encodings in wily. If Play or Spray can match performance, connection pooling and log configuration, it would be an option for a proof-of-concept. Any recommendations? Thanks, - charlie - robert -- Read the docs: http://akka.io/docs/ Check the FAQ: http://akka.io/faq/ Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/groups/opt_out. -- Read the docs: http://akka.io/docs/ Check the FAQ: http://akka.io/faq/ Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups Akka User List group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/groups/opt_out. -- Read the docs: