反馈已提交
网络繁忙
目前 LogDB 数据库不支持迁移,用户如果想对日志数据进行一些复杂分析时较为麻烦,希望日志数据可以迁移到自己的数据库中进行管理和分析。
用户希望把各个系统的日志都放在同一个地方运维管理。
安装「平台日志同步到其他数据库」插件后,用户可以通过设置将 LogDB 中的部分表数据定期同步到其它数据库中。
插件下载请点击:平台日志同步到其他数据库插件
插件安装方法参见:插件管理
插件安装成功后,点击「管理系统>智能运维>平台日志」,平台日志界面新增「日志同步」Tab,如下图所示:
1)以管理员身份进入数据决策系统,点击「管理系统>智能运维>平台日志」,在「日志同步」Tab 页中点击「设置日志同步任务」,如下图所示:
2)在日志同步设置中,选择「同步日志起始时间」,勾选需要同步的日志,点击「下一步」。如下图所示:
支持同步的日志表包括:
报表执行日志 fine_record_execute
登录日志 fine_record_login
邮件发送日志 fine_record_email
填报日志 fine_record_write
短信发送日志 fine_record_sms
管理行为日志 fine_record_operate
应用实时情况 fine_real_time_usage
gc日志 fine_record_gc
功能使用情况 fine_intelli_focus_point
填写日志数据将要迁移到的数据库相关信息,点击「确定」,如下图所示:
插件配置完成后,需要重启服务器,配置方可生效。
注:插件每 3 分钟同步一次,每张表每次最多同步数据 3W 条。如果本次同步的数据不足 3W 条,那最多同步 3 个小时跨度的数据。
例如2021-08-02 13:00:00~16:00:00,有30条数据,那这次同步就最多同步这30条数据。
同步成功后,同步状态如下图所示:
若勾选「同步失败时,通知管理员」按钮,同步失败时,管理员会收到平台消息。如下图所示:
可点击「暂停」按钮,暂停同步。如下图所示:
暂停同步或同步失败时,可点击「编辑」按钮,重新编辑同步任务。如下图所示:
“起始时间生效对象”设置说明:
若希望所有被勾选的表都从用户设置的「同步日志起始时间」开始同步,则“起始时间生效对象”设置为“所有同步的日志”;
若希望只有新增加的表从「同步日志起始时间」的设置值开始同步,其余已有在同步的表延着之前同步到的地方继续同步,则“起始时间生效对象”设置为“仅对本次变动的日志生效”;
若希望暂停部分表的同步,其余表延着之前同步到的地方继续同步,则“起始时间生效对象”设置为“仅对本次变动的日志生效”,再取消对需要暂停同步表的勾选。
点击「查看同步详情」按钮,可查看同步详情。如下图所示:
只展示上次同步任务的运行状态。各字段说明如下表所示:
成功/失败
运行结果为「失败」情况下,可以点击查看具体报错
日志数据同步到设置的数据库中。如下图所示:
注1:字段中内容过长可以入库,但是超过 255 字符的内容会被截断。
注2:日志清理 不会影响到已迁移到外接数据库中的日志数据。
同步后的表,新增了自增长主键(syncID),增加了时间戳字段(storageTime),示例如下图所示:
字段名使用数据库保留名时,为了能够兼容各个版本,针对保留名做别名处理。改名处理的具体字段如下表所示:
同步插件会以用户设置的同步开始时间为起点,按照时间顺序分批将日志同步到第三方数据库中,插件每3分钟同步一次,每张表每次最多同步数据3W 条。
如果本次同步的数据不足3W 条,那最多同步 24 个小时跨度的数据(2021-3-23之前最多同步3小时跨度的数据)。
同步失败,可排查以下数据库问题。
检查数据库驱动、模式、密码是否正确,可在数据连接处先尝试是否能正常连接。
数据库重启会导致日志同步中断,同步终止后要在平台上重新启动任务。
检查数据库用户是否有创建表和插入数据的权限。
用户最好需要具备 create、delete、alter、update、select、insert 权限。
MySQL5数据库编码建议为utf8,不支持 utf8mb4 编码。
若为阿里云rds mysql ,还需要确认引擎是否为innodb。
同步失败,出现三种现象时,可排查以下插件问题。
问题描述:
1)fanruan.log中报错有重复的插件包
2)平台日志同步界面显示空白
3)平台日志同步界面显示英文
检查是否重复安装了插件
若重复安装了,删除插件,重启服务器,重新安装插件
同步出现问题,可查看fanruan.log,报错信息中包含「com.fr.plugin.sync」,可根据报错信息定位问题。
SyncLog: getConfigInstance failed!, retry to getConfigInstance!
java.lang.AssertionError: com.fr .plugin.sync.config.status.IsStart has the same tableName with com.fr .plugin.sync.config.status.IsStart
1)安装了不同版本的平台日志同步插件,需要在plugins中将插件文件删除干净,重启服务器,再次安装。
2)同时安装了「日志数据同步」 插件和「平台日志同步到其他数据库」插件,需将旧版本「日志数据同步」 插件删掉。
同步的XXX表太大,swift中止查询,导致查询失败。
平台日志同步插件无法支持特别大数据量的日志同步,建议适当清理表数据再同步。
SyncLog: sync failed: com.fr.third.org.hibernate.StaleStateException:
Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1。
数据库或表的字符集有问题。
数据库可能有未提交的事务,导致数据提交失败。
检查是否存在没提交的事务,若存在,处理后再尝试同步。
Oracle模式填thin就会报错,将改成用户名即可。
feedback
鼠标选中内容,快速反馈问题
鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。
不再提示
10s后关闭