历史版本24 :平台日志 LogDB 数据库 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 概述编辑

1.1 版本

FineBI 版本
5.1

1.2 应用场景

为了加强对 FineBI 工程的管理,随时监控其运行状态,可在平台中开启日志记录,如下图所示:

注:平台日志的设置仅影响系统日志的输出,不影响操作日志。

7.png

1.3 功能简介

LogDB 是 FineBI 日志监控开启之后,用于保存日志的内置数据库,那么 FineBI 日志都包含哪些内容呢?

本文将简单介绍 LogDB 中各个数据表的含义以及字段的含义。

数据库 LogDB 中表的实际应用可以参考:LogDB 的实际应用场景

2. 连接 LogDB 数据库编辑

2.1 新建数据连接

1)以管理员身份进入数据决策系统,点击管理系统>数据连接>数据连接管理>新建数据连接,如下图所示:

8.png

2)数据连接方式选择其他>其他 JDBC,如下图所示:

9.png

3)如下图配置好数据连接信息,点击保存即可。

配置项内容备注
数据连接名称LogDB-
驱动com.fr.swift.jdbc.Driver手动输入驱动器名称
数据连接 URLjdbc:swift:emb://defaultMac、Windows、Linux 通用

1596075068586961.png

2.2 查询 LogDB 数据表

注:使用 LogDB 数据表时,不支持 实时数据

1)以管理员身份进入数据决策系统,点击管理系统>数据连接>服务器数据集>创建数据集>SQL 数据集,如下图所示:

11.png

2)输入数据库查询语句,点击预览按钮即可查询 LogDB 中的数据表。如下图所示:

12.png

2.3 LogDB 数据表和字段

 Logdb 数据库中各个数据表和表字段的含义,请参见:LogDB 表结构

3. 查询语法编辑

本章将简单介绍LogDB支持的查询语法,本文未列举的语法,不确保可用。

3.1 明细查询

SQL 语句示例:

1)select * from fine_record_execute

2)select tname, displayName, consume from fine_record_execute

3.2 group by 查询

GROUP BY 查询,有 SUM,COUNT, MAX, MIN, AVG 这五种聚合方式。

如果SQL语句中不写聚合方式,会默认使用 COUNT 。

SQL 语句示例:

1)select sum(consume) from fine_record_execute group by tname, displayName

2)select consume from fine_record_execute group by tname, displayName

等同于:select COUNT(consume) from fine_record_execute group by tname, displayName

3)select min(consume), max(consume) from fine_record_execute group by tname, displayName

3.3 where 过滤条件

简单的 WHERE 过滤条件,支持 AND, OR, =,<>,>,>=, <,<=, in, isnull 

SQL 语句示例:

1)select * from fine_record_execute where consume > 10

2)select sum(consume) from fine_record_execute where consume > 10 and consume < 100 group by tname, displayName

3)select consume from fine_record_execute where tname = `doc/Advanced/Chart/GraphSwitching/多图表实现统一切换.frm`

4)select sum(consume) from fine_record_execute where tname in (`doc/Advanced/Chart/GraphSwitching/多图表实现统一切换.frm`, `doc/Advanced/Chart/Combination/柱形-面积组合图.cpt`) group by tname, displayName

3.4 todate() 将时间戳转换为普通的日期类型

todate() 结果的日期格式为:2018-12-18 10:15:26

SQL 语句示例:

1)  select todate(time) from fine_record_execute

2) select * from fine_record_execute where todate(time)<'2018-12-18 10:15:26' and todate(time)>'2018-12-17 10:15:26'

3.5 like 模糊查询

只支持前后‘%’的用法

注1:支持使用 like 进行模糊查询,不支持 not like 用法 。

注2:目前只支持 '%',暂不支持通配符 ‘_’,需要更新 2019-06-14 以后的 JAR。

SQL 语句示例:

1)select * from fine_record_execute where tname like '%demo%'

4. 注意事项编辑

4.1 LogDB 中添加表后更新失败

问题描述:

在 LogDB 数据库中添加表后,更新失败。平台报错:更新失败,请联系管理员查看报错信息。如下图所示:

3.png

原因分析:

1)编辑过的 基础表 更新会嵌套,但目前 swift 不支持嵌套。所以,FineBI 目前暂不支持本节「问题描述」中的操作。

2)LogDB不支持增量更新,logdb本身就是内部数据,不建议外部连接,如果要使用抽数查看,可以使用全量更新。

4.2 browser 字段说明

LogDB 数据库fine_record_execute表中 browser 字段一般记录客户端访问报表所用的浏览器版本,例如:CHROME/83.0.,当 browser 字段值如下所示时:

{'Browser':'webkit','Version':'537.36','Agent':'mozilla/5.0 (windows nt 10.0; win64; x64) applewebkit/537.36 (khtml, like gecko) chrome/81.0.4044.138 safari/537.36','BoxModel':true,'terminal':'null'}

记录的是浏览器请求头user agent(用户代理字符串)的值,user agent相当于浏览器的唯一标识。

4.3 一个模板编号对应多个模板名称

问题描述:

LogDB 数据库fine_record_execute表中,一个 reportId 对应多个 tname ,如下图所示:

12.png

原因分析:

仪表板被多次重命名,每次重命名后都对仪表板进行访问/导出/打印操作,所以 fine_record_execute 表中一个模板编号会对应多个模板名称。