scala发送消息到kafka示例
2016-03-29 13:54
399 查看
1) build文件需要填写依赖的jar包
2) src/man/resources/
新建一个文件log4j.properties
3) src/scala目录下新建一个kafka_sendmsg.scala文件
4) consumer的日志
ip说明: 10.57.137.131 是 vmware 自动获取的IP.
5) 文件目录结构
"org.slf4j" % "slf4j-api" % "1.7.5", "org.slf4j" % "slf4j-log4j12" % "1.7.5", "com.yammer.metrics" % "metrics-core" % "2.2.0", "com.yammer.metrics" % "metrics-annotation" % "2.2.0", "org.apache.kafka" % "kafka-clients" % "0.9.0.0", "org.apache.kafka" % "kafka_2.11" % "0.9.0.0"
2) src/man/resources/
新建一个文件log4j.properties
#log4j.rootLogger=INFO, stdout log4j.rootLogger=ERROR, FileOut log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n log4j.appender.FileOut=org.apache.log4j.FileAppender log4j.appender.FileOut.File=./logs.log log4j.appender.FileOut.Append=true log4j.appender.FileOut.layout=org.apache.log4j.PatternLayout log4j.appender.FileOut.layout.ConversionPattern=%-d{yyyy-MM-dd HH\:mm\:ss,SSS} [%C]-[%p] %m%n
3) src/scala目录下新建一个kafka_sendmsg.scala文件
package kafka_sendmsg import java.util.{Date, Properties} import kafka.producer.KeyedMessage import kafka.producer.ProducerConfig import kafka.producer.Producer object kafka_sendmsg extends App { val props = new Properties() props.put("metadata.broker.list","10.57.137.131:9092") // broker 如果有多个,中间使用逗号分隔 props.put("serializer.class","kafka.serializer.StringEncoder") props.put("request.required.acks","1") val config = new ProducerConfig(props) val producer = new Producer[String,String](config) val runtime = new Date().toString val msg = "message publishing time - " + runtime val topic="logs" //注意topic val data = new KeyedMessage[String,String](topic,msg) producer.send(data) producer.close() }
4) consumer的日志
ip说明: 10.57.137.131 是 vmware 自动获取的IP.
5) 文件目录结构
相关文章推荐
- 【LeetCode编程学习(C语言)】2.Add Two Numbers
- java中File类的使用方法
- Oracle MERGE INTO 语句
- Atom使用心得 - 21世纪的编辑器
- 确定两串乱序同构
- oracle 备库归档自动删除脚本
- win7-64bit 安装Python3.5
- Android之网络编程
- Redis分布式客户端-Redisson介绍
- 2016-3-29 linux基础学习——vim编辑器的使用
- Android 自定义权限的使用以及遇到的问题
- iOS 对网络视频采集视频截图
- spring mvc 的 resources 注解 用来处理静态文件
- 当当网的内部框架开源策略案例分享
- 积分图像
- Linux内核分析 读书笔记 (第十八章)
- leetcode 3. Longest Substring Without Repeating Characters
- QPS PV
- 别再用print来调试啦:logging模块超简明指南
- Awesome Python