在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
开源软件名称:phoenix开源软件地址:https://gitee.com/monitoring-platform/phoenix开源软件介绍:介绍“phoenix” 是一个灵活可配置的开源监控平台,主要用于监控应用程序、服务器、数据库和网络,通过实时收集、汇聚和分析监控信息,实现在发现异常时立刻推送告警信息,并且提供了可视化系统进行配置、管理、查看。
特点
设计
下载
<!-- https://mvnrepository.com/artifact/com.gitee.pifeng/phoenix-client-core --><dependency> <groupId>com.gitee.pifeng</groupId> <artifactId>phoenix-client-core</artifactId> <version>${最新稳定版本}</version></dependency>
<!-- https://mvnrepository.com/artifact/com.gitee.pifeng/phoenix-client-spring-boot-starter --><dependency> <groupId>com.gitee.pifeng</groupId> <artifactId>phoenix-client-spring-boot-starter</artifactId> <version>${最新稳定版本}</version></dependency>
<!-- https://mvnrepository.com/artifact/com.gitee.pifeng/phoenix-client-spring-mvc-integrator --><dependency> <groupId>com.gitee.pifeng</groupId> <artifactId>phoenix-client-spring-mvc-integrator</artifactId> <version>${最新稳定版本}</version></dependency>
使用初始化“监控数据库”下载项目源码并解压,进入目录:/phoenix/doc/数据库设计/sql/mysql ,找到SQL脚本并执行即可。 phoenix.sql 编译源码解压源码,按照maven格式将源码导入IDE, 使用maven进行编译即可。 配置监控配置
/*** 开发环境监控配置*/@Configuration@Profile("dev")@EnableMonitoring(configFileName = "monitoring-dev.properties")public class MonitoringUiDevConfig {}/*** 生产环境监控配置*/@Configuration@Profile("prod")@EnableMonitoring(configFileName = "monitoring-prod.properties")public class MonitoringUiProdConfig {}
加解密配置除了监控配置文件外,还可以在 classpath:/ 下加入 monitoring-secure.properties 加解密配置文件,用来修改监控平台的加解密方式。但是注意各监控端加解密配置参数必须相同。这个配置不是必须的,没有此配置文件将使用默认加解密配置,加入此配置文件则必须正确配置配置项。
秘钥可通过 com.gitee.pifeng.monitoring.common.util.secure.SecureUtilsTest#testGenerateKey 方法生成,然后填入配置文件。 第三方登录认证配置监控UI端除了支持直接登录认证外,还支持第三方登录认证,只需在application.yml(或者application-{profile}.yml)配置文件中增加对应配置项即可使用。
如果 third-auth.enable=true && third-auth.type=cas ,则需要进行cas配置。
客户端开启监控
<!-- 开启监控功能 --><web-app><context-param> <param-name>configLocation</param-name> <param-value>classpath:monitoring.properties</param-value></context-param><listener> <listener-class> com.gitee.pifeng.monitoring.integrator.listener.MonitoringPlugInitializeListener </listener-class></listener></web-app> 业务埋点Java应用程序只要集成了监控客户端,就具有业务埋点监控的能力,通过 Monitor.buryingPoint() 方法定时监控业务运行情况,通过 Monitor.sendAlarm() 发送告警。具体使用示例如下: // 业务埋点监控ScheduledExecutorService service = Monitor.buryingPoint(() -> { // 假如发现了业务异常,用下面的代码发送告警 Alarm alarm = new Alarm(); alarm.setAlarmLevel(AlarmLevelEnums.ERROR); alarm.setTitle("业务埋点监控"); alarm.setTest(false); alarm.setCharset(Charsets.UTF_8); alarm.setMsg("测试普通maven程序业务埋点监控!"); // alarm.setCode("001"); alarm.setMonitorType(MonitorTypeEnums.CUSTOM); Result result = Monitor.sendAlarm(alarm); System.out.println("发送业务告警结果:" + result.toJsonString());}, 0, 1, TimeUnit.HOURS, ThreadTypeEnums.IO_INTENSIVE_THREAD); 时钟同步部署监控程序(监控UI端、监控服务端、监控代理端、监控客户端)的服务器集群需要进行时钟同步(NTP),保证时间的一致性!。 打包部署运行Jar包部署
mvn -Dmaven.test.skip=true clean package
Docker部署
vi /usr/lib/systemd/system/docker.service #确保:ExecStart 的后面有: -H tcp://0.0.0.0:2375 #修改完成后保存退出,刷新并重启docker服务 systemctl daemon-reload systemctl restart docker
mvn -Dmaven.test.skip=true clean package docker:build
docker run -itd -v /tmp:/tmp -v /liblog4phoenix:/liblog4phoenix -v /etc/localtime:/etc/localtime:ro -p 443:443 --pid host --net host --name phoenix-ui phoenix/phoenix-ui /bin/bash
docker run -itd -v /tmp:/tmp -v /liblog4phoenix:/liblog4phoenix -v /etc/localtime:/etc/localtime:ro -p 16000:16000 --pid host --net host --name phoenix-server phoenix/phoenix-server /bin/bash
docker run -itd -v /tmp:/tmp -v /liblog4phoenix:/liblog4phoenix -v /etc/localtime:/etc/localtime:ro -p 12000:12000 --pid host --net host --name phoenix-agent phoenix/phoenix-agent /bin/bash
mvn -Dmaven.test.skip=true clean package
docker build -t phoenix/phoenix-ui .
docker build -t phoenix/phoenix-server .
docker build -t phoenix/phoenix-agent .
docker run -itd -v /tmp:/tmp -v /liblog4phoenix:/liblog4phoenix -v /etc/localtime:/etc/localtime:ro -p 443:443 --pid host --net host --name phoenix-ui phoenix/phoenix-ui /bin/bash
docker run -itd -v /tmp:/tmp -v /liblog4phoenix:/liblog4phoenix -v /etc/localtime:/etc/localtime:ro -p 16000:16000 --pid host --net host --name phoenix-server phoenix/phoenix-server /bin/bash
docker run -itd -v /tmp:/tmp -v /liblog4phoenix:/liblog4phoenix -v /etc/localtime:/etc/localtime:ro -p 12000:12000 --pid host --net host --name phoenix-agent phoenix/phoenix-agent /bin/bash 集群部署监控服务端、监控UI端支持集群部署,提升系统的容灾和可用性。 集群部署时的几点要求和建议:
访问监控UI端 访问URL:https://localhost/phoenix-ui/index ,初始账号/密码:admin/admin123,guest/guest123。 功能截图常见问题https://gitee.com/monitoring-platform/phoenix/wikis/pages?sort_id=4438763&doc_id=935794 升级日志https://gitee.com/monitoring-platform/phoenix/wikis/pages?sort_id=4420016&doc_id=935794 期望欢迎提出更好的意见,帮助完善 phoenix 版权GNU General Public License v3.0 联系QQ群:773127639 捐助 |
请发表评论