问题:
重启Dbforbix时tail -f dbforbix.log报错日志是:
2019-11-14 10:52:59 INFO reading items from /opt/dbforbix/items/mssql.xml
2019-11-14 10:52:59 DEBUG creating item scheduler with time 900
2019-11-14 10:52:59 DEBUG creating item scheduler with time 600
2019-11-14 10:52:59 DEBUG creating item scheduler with time 300
2019-11-14 10:52:59 DEBUG creating item scheduler with time 3600
2019-11-14 10:52:59 INFO reading items from /opt/dbforbix/items/mysql.xml
2019-11-14 10:52:59 INFO reading items from /opt/dbforbix/items/oracle.xml
2019-11-14 10:52:59 DEBUG creating item scheduler with time 60
2019-11-14 10:52:59 INFO Starting DBforBIX Version 2.2-beta
2019-11-14 10:52:59 DEBUG ZabbixSender - starting sender thread
2019-11-14 10:52:59 DEBUG PersistentDBSender - starting sender thread
2019-11-14 10:52:59 FATAL DBforBix crashed!
java.lang.NullPointerException
at com.smartmarmot.dbforbix.db.DBManager.addDatabase(DBManager.java:49)
at com.smartmarmot.dbforbix.DBforBix.main(DBforBix.java:204)
at com.smartmarmot.dbforbix.DBforBix.start(DBforBix.java:438)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.commons.daemon.support.DaemonLoader.start(DaemonLoader.java:243)
2019-11-14 10:52:59 INFO PersistentDB - initialization
2019-11-14 10:52:59 INFO PersistentDB - initialization completed
并且重启卡在PersistentDB初始化阶段,多次重启依然无效(一般情况下Dbforbix启动初始化完成后开始创建连接池与数据库建立连接)
解决:
进入配置文件,修改Dbforbix的日志打印界别:
vim config.properties
#Log level (All|Debug|Info|Warning|Error)
#Change LogLevel from Infor to All
DBforBix.LogLevel=Warning --只打印告警界别
#DBforBix.LogLevel=All --打印所有级别
让Dbforbix打印所有级别日志,发现debug信息:
– Database: MYSQL:jdbc:mysql://IP:PORT/mysql null
– Database: MYSQL:jdbc:mysql://IP:PORT/mysql null
– Database: MYSQL:jdbc:mysql://IP:PORT/mysql null
– Database: MYSQL:jdbc:mysql://IP:PORT/mysql null
– Database: **null:jdbc:**oracle:thin:@IP:PORT:SID null
数据库类型缺失,可能会导致PersistentDB识别不了,验证后发现数据库配置项确实缺少DB.type修改后重启成功