bitcoin-atm
bitcoin atm for pyc inc.
git clone https://9o.is/git/bitcoin-atm.git
Logger.scala
(1028B)
1 package inc.pyc.chimera
2 package snippet
3
4 import akka.actor._
5 import net.liftweb.json._
6
7 object LoggerActor {
8 val logger = System.system.actorOf(Props[LoggerActor], "ClientLogger")
9 }
10
11 import LoggerActor._
12
13 /**
14 * Snippet to allow client to send console logs to
15 * chimera's akka system.
16 */
17 class Logger extends ChimeraEventRegister {
18 val topic = ""
19
20 override val receive: Receive = {
21 case JObject(List(JField("debug", JString(msg)))) => logger ! ("debug", msg)
22 case JObject(List(JField("info", JString(msg)))) => logger ! ("info", msg)
23 case JObject(List(JField("warn", JString(msg)))) => logger ! ("warn", msg)
24 case JObject(List(JField("error", JString(msg)))) => logger ! ("error", msg)
25 }
26 }
27
28 /**
29 * Forwards logs.
30 */
31 class LoggerActor extends Actor with ActorLogging {
32 def receive = {
33 case ("debug", msg: String) => log debug msg
34 case ("info", msg: String) => log info msg
35 case ("warn", msg: String) => log warning msg
36 case ("error", msg: String) => log error msg
37 }
38 }