Skip to content
paulcleary edited this page Nov 11, 2015 · 4 revisions

Money supports sending money span data directly to a Kafka cluster. To send data to Kafka, simply configure the emitter...

      {
        name = "kafka-emitter"
        class-name = "com.comcast.money.kafka.KafkaEmitter"
        subscriptions = [Trace]
        configuration = {
          topic = "money"
          compression.codec = "1" // gzip compression enabled by default
          producer.type = "async" // async does not block, but will allow message loss in a network partition
          batch.num.messages = "1" // batching messages together increases throughput
          message.send.max.retries = "3" // retrying on a network partition could introduce duplicates
          request.required.acks = "0" // this indicates that we never wait for an ack.  1 gets an ack once the leader replica receives the data.  -1 waits until all replicas get data
          metadata.broker.list = "localhost:9092"
        }
      }

The metadata.broker.list is a comma separate list of host:port values that point to your brokers.

Money data is encoded in Avro format by default, using the following avro schema: money.avsc