From f0de599675fd53d6080ec0c77da92c6809106e46 Mon Sep 17 00:00:00 2001 From: ShenYuhan Date: Thu, 19 Nov 2020 11:52:21 +0800 Subject: [PATCH] adjust index of document (#849) * add index for LogReader --- README.md | 42 ++++++++++++++++++++++++++++ docs/components/README.md | 58 --------------------------------------- docs/io/LogReader.md | 56 +++++++++++++++++++++++++++++++++++++ 3 files changed, 98 insertions(+), 58 deletions(-) create mode 100644 docs/io/LogReader.md diff --git a/README.md b/README.md index 2e8889d2..46e43af0 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,8 @@ VisualDL原生支持python的使用, 通过在模型的Python配置中添加 * [开源贡献](#开源贡献) +* [常见问题](#常见问题) + * [更多细节](#更多细节) ## **[HOT]活动公告** @@ -214,6 +216,43 @@ app.run(logdir="./log")

+### 3. 使用LogReader获取日志中的数据 + +VisualDL的后端也提供了获取日志数据的组件`LogReader`,可通过其获取日志中任意数据,接口如下: +```python +class LogReader(logdir=None, + file_name='') +``` +#### 接口参数 + +| 参数 | 格式 | 含义 | +| --------------- | ------- | ------------------------------------------------------------ | +| logdir | string | 日志文件所在的路径,必填| +| file_name | string | 指定要读的日志文件名,必填| + +#### 示例 + +假定在`./log`文件夹下有一个日志文件`vdlrecords.1605533348.log`,则获取此日志中tag为`loss`的scalar数据过程如下: + +```python +from visualdl import LogReader + +reader = LogReader(logdir='./log', file_name='vdlrecords.1605533348.log') +data = reader.get_data('scalar', 'loss') +print(data) +``` +结果为列表形式,如下 +```python +... +id: 5 +tag: "Metrics/Training(Step): loss" +timestamp: 1605533356039 +value: 3.1297709941864014 +... +``` + +关于LogReader的更多具体用法,可参考[LogReader](./docs/io/LogReader.md) + ## 可视化功能概览 @@ -300,6 +339,9 @@ VisualDL可视化结果保存服务,以链接形式将可视化结果保存下

+## 常见问题 +在使用VisualDL的过程中可能遇到的一些问题,可参考[常见问题](./docs/faq.md)帮助解决 + ## 开源贡献 VisualDL 是由 [PaddlePaddle](https://www.paddlepaddle.org/) 和 [ECharts](https://echarts.apache.org/) 合作推出的开源项目。 diff --git a/docs/components/README.md b/docs/components/README.md index 9525fb67..87f942c0 100644 --- a/docs/components/README.md +++ b/docs/components/README.md @@ -768,61 +768,3 @@ visualdl service upload --logdir ./log \

- - -## LogReader - -### 简介 -VisualDL可通过LogReader获取保存的日志中所有数据,帮助用户进行更详细的分析工作。 - -### 使用方式 - -### 1. 获取LogReader实例 - -LogReader的初始化接口如下: -```python -class LogReader(logdir=None, - file_name='') -``` -#### 接口参数 - -| 参数 | 格式 | 含义 | -| --------------- | ------- | ------------------------------------------------------------ | -| logdir | string | 日志文件所在的路径,必填| -| file_name | string | 指定要读的日志文件名,必填| - -#### 示例 - -假定在`./log`文件夹下有一个日志文件`vdlrecords.1605533348.log`,则获取LogReader实例如下: - -```python -from visualdl import LogReader - -reader = LogReader(logdir='./log', file_name='vdlrecords.1605533348.log') -``` - -### 2. 获取所有数据的tag信息 -通过接口`tags()`可获取LogReader实例对应日志中的所有数据tag信息,如下: -```python -tags = reader.tags() -``` -结果如下,格式为`${file_name}/${tag}:${component_name}` -```python -{'vdlrecords.1605533348.log/meta_data_tag': 'meta_data', 'vdlrecords.1605533348.log/Metrics%Training(Step): loss': 'scalar', 'vdlrecords.1605533348.log/Metrics%Training(Step): acc1': 'scalar', 'vdlrecords.1605533348.log/Metrics%Training(Step): acc5': 'scalar', 'vdlrecords.1605533348.log/Metrics%Training(Step): lr': 'scalar', 'vdlrecords.1605533348.log/Metrics%Eval(Epoch): acc1': 'scalar', 'vdlrecords.1605533348.log/Metrics%Eval(Epoch): acc5': 'scalar'} -``` - -### 3. 获取某tag对应的数据 -通过接口`get_data(component, tag)`可获取某组件某tag对应的所有数据,例如: -```python -# 获取scalar组件tag为`Metrics%Training(Step): loss`的数据 -data = reader.get_data('scalar', 'Metrics%Training(Step): loss') -``` -结果为列表形式,如下 -```python -... -id: 5 -tag: "Metrics/Training(Step): loss" -timestamp: 1605533356039 -value: 3.1297709941864014 -... -``` \ No newline at end of file diff --git a/docs/io/LogReader.md b/docs/io/LogReader.md new file mode 100644 index 00000000..2ee292af --- /dev/null +++ b/docs/io/LogReader.md @@ -0,0 +1,56 @@ +# LogReader + +## 简介 +VisualDL可通过LogReader获取保存的日志中所有数据,帮助用户进行更详细的分析工作。 + +## 使用方式 + +### 1. 获取LogReader实例 + +LogReader的初始化接口如下: +```python +class LogReader(logdir=None, + file_name='') +``` +#### 接口参数 + +| 参数 | 格式 | 含义 | +| --------------- | ------- | ------------------------------------------------------------ | +| logdir | string | 日志文件所在的路径,必填| +| file_name | string | 指定要读的日志文件名,必填| + +#### 示例 + +假定在`./log`文件夹下有一个日志文件`vdlrecords.1605533348.log`,则获取LogReader实例如下: + +```python +from visualdl import LogReader + +reader = LogReader(logdir='./log', file_name='vdlrecords.1605533348.log') +``` + +### 2. 获取所有数据的tag信息 +通过接口`tags()`可获取LogReader实例对应日志中的所有数据tag信息,如下: +```python +tags = reader.tags() +``` +结果如下,格式为`${file_name}/${tag}:${component_name}` +```python +{'vdlrecords.1605533348.log/meta_data_tag': 'meta_data', 'vdlrecords.1605533348.log/Metrics%Training(Step): loss': 'scalar', 'vdlrecords.1605533348.log/Metrics%Training(Step): acc1': 'scalar', 'vdlrecords.1605533348.log/Metrics%Training(Step): acc5': 'scalar', 'vdlrecords.1605533348.log/Metrics%Training(Step): lr': 'scalar', 'vdlrecords.1605533348.log/Metrics%Eval(Epoch): acc1': 'scalar', 'vdlrecords.1605533348.log/Metrics%Eval(Epoch): acc5': 'scalar'} +``` + +### 3. 获取某tag对应的数据 +通过接口`get_data(component, tag)`可获取某组件某tag对应的所有数据,例如: +```python +# 获取scalar组件tag为`Metrics%Training(Step): loss`的数据 +data = reader.get_data('scalar', 'Metrics%Training(Step): loss') +``` +结果为列表形式,如下 +```python +... +id: 5 +tag: "Metrics/Training(Step): loss" +timestamp: 1605533356039 +value: 3.1297709941864014 +... +``` \ No newline at end of file -- GitLab