jlogstash


License

License

Categories

Categories

Logstash Application Layer Libs Logging
GroupId

GroupId

com.dtstack.jlogstash
ArtifactId

ArtifactId

jlogstash
Last Version

Last Version

1.0.0
Release Date

Release Date

Type

Type

jar
Description

Description

jlogstash
jlogstash
Project URL

Project URL

https://github.com/DTStack/jlogstash
Source Code Management

Source Code Management

https://github.com/DTStack/jlogstash

Download jlogstash

How to add to project

<!-- https://jarcasting.com/artifacts/com.dtstack.jlogstash/jlogstash/ -->
<dependency>
    <groupId>com.dtstack.jlogstash</groupId>
    <artifactId>jlogstash</artifactId>
    <version>1.0.0</version>
</dependency>
// https://jarcasting.com/artifacts/com.dtstack.jlogstash/jlogstash/
implementation 'com.dtstack.jlogstash:jlogstash:1.0.0'
// https://jarcasting.com/artifacts/com.dtstack.jlogstash/jlogstash/
implementation ("com.dtstack.jlogstash:jlogstash:1.0.0")
'com.dtstack.jlogstash:jlogstash:jar:1.0.0'
<dependency org="com.dtstack.jlogstash" name="jlogstash" rev="1.0.0">
  <artifact name="jlogstash" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.dtstack.jlogstash', module='jlogstash', version='1.0.0')
)
libraryDependencies += "com.dtstack.jlogstash" % "jlogstash" % "1.0.0"
[com.dtstack.jlogstash/jlogstash "1.0.0"]

Dependencies

compile (13)

Group / Artifact Type Version
log4j : log4j jar 1.2.17
joda-time : joda-time jar 2.8.2
org.freemarker : freemarker-gae jar 2.3.23
org.yaml : snakeyaml jar 1.16
org.apache.commons : commons-lang3 jar 3.4
commons-cli : commons-cli jar 1.2
commons-collections : commons-collections jar 3.2.2
com.google.guava : guava jar 19.0
org.apache.httpcomponents : httpclient jar 4.5.2
redis.clients : jedis jar 2.8.1
org.codehaus.jackson : jackson-mapper-asl jar 1.9.13
ch.qos.logback : logback-classic jar 1.1.7
io.thekraken : grok jar 0.1.4

Project Modules

There are no modules declared in this project.

注释:

  jlogstash前期的有部分代码引用了hangout项目里的代码,这里也感谢hangout的作者。

说明:

用java版本重写logstash目的是提升性能,跟ruby logstash 对比 请看 https://github.com/DTStack/jlogstash-performance-testing

不同的业务,性能会有所不同,dtstack 后台日志解析 java 版本是ruby版本的5倍,在单台4g 4cores 虚拟机上。

jlogstash 的参数配置和使用看wiki介绍,现在的插件跟ruby版本相比还太少,希望更多的人参与开发。

Inputs详情:

https://github.com/DTStack/jlogstash/tree/master/pipeline/inputs/README.md

Filters详情:

https://github.com/DTStack/jlogstash/tree/master/pipeline/filters/README.md

Outputs详情:

https://github.com/DTStack/jlogstash/tree/master/pipeline/outputs/README.md

性能采集:

目前支持将jlogstash运行时的性能数据采集到promethues.

详情:https://github.com/DTStack/jlogstash/tree/master/core/metrics.md

Jar放置目录(编译的jar必须要有版本号 ):

jlogstash 核心代码放在jlogstash/lib/下

插件的代码分别的放到jlogstash/plugin 下的filter,input,output目录下

启动命令:

sh jlogstash.sh -f /home/admin/ysq.yaml vv

启动参数:

-name:任务名称

-f:配置文件 yaml格式路径(必填)

-l:日志文件路径

-i:input queue size coefficient 默认 200f/1024

-w:filter work number 默认是根据的机器cpu核数+2

-o:output work number 默认是根据的机器cpu核数

-c:output queue size coefficient 默认 500f/1024

-dev: 开发模式,直接在pom.xml引用包即可。

v: error级别

vv: warn级别

vvv:info级别

vvvv:debug级别

vvvvv:trace级别

插件开发:

 1.现在各自的plugin 的包 都会有各自的classloder去加载,parent classloder是AppClassLoder,所以各自的plugin的代码即使引用了相同的第三的jar版   本不一样也不会导致版本冲突  

2.各个插件的代码不能相互引用,如果有公共代码需要打入到各自的jar包中

3.所需依赖到maven中心库 搜索 jlogstash(http://search.maven.org/https://oss.sonatype.org)

4.插件开发样列 https://github.com/DTStack/jlogstash/tree/master/src/test/java/com/dtstack/jlogstash

5.每一个plugin打的包名的前缀要跟插件的类名一致,不区分大小写,不然会报类找不到,列如:input.kafka-1.0.0.jar 或    kafka-1.0.0.jar

招聘:

1.大数据平台开发工程师,想了解岗位详细信息可以添加本人微信号ysqwhiletrue,注明招聘,如有意者发送简历至[email protected]

com.dtstack.jlogstash

袋鼠云

Versions

Version
1.0.0