5.3 实现分析器并部署
刚创建好的分析器部署状态为'未部署'
项目中实现分析器并启动后,部署状态会变成'已部署'
- pom.xml依赖
<dependency>
<groupId>com.eazytec.middleware</groupId>
<artifactId>uba-lite-analyzer</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
- 实现分析器(spring依赖)
@Component
public class YourHandler implements AnalyzerHandler, ApplicationListener<ContextRefreshedEvent> {
/** 分析器中配置对消息主题 */
@Override
public String topic() {
return "your-topic";
}
/** 日志分析 */
@Override
public void execute(UbaEvent event) {
}
/** 通过spring实现分析器注册,也可通过其他方式注册,注册完成后即会开始接收日志数据 */
@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
if(event.getApplicationContext().getParent() == null) {
UbaAnalyzerCenter.instance().register(this);
}
}
}
- 重点说明
通过"全局参数-env"区分开发环境和线上环境
分析器接受的日志数据都是线上产生的数据(测试环境也是如此)
一份日志数据会同时发送给'开发环境'和'线上环境'的分析器处理
由于底层实现机制,会接受到一部分日志中心缓存的日志数据