Vega
Vega 和 Vega-Lite 是开源的声明式语言可视化工具,您可以使用它们通过 OpenSearch 数据和 Vega 数据创建自定义数据可视化。这些工具非常适合能够直接编写 OpenSearch 查询的高级用户。在您的 opensearch_dashboards.yml
文件中启用 vis_type_vega
插件,以便以 JSON 或 HJSON 格式编写 Vega 规范,或者在您的 Vega 规范中指定一个或多个 OpenSearch 查询。默认情况下,该插件设置为 true
。
从多个数据源创建 Vega 可视化
2.13 版本引入
在继续之前,请确保在 config/opensearch_dasboards.yaml
文件中启用了以下配置设置。有关配置详情,请参阅 vis_type_vega
README。
data_source.enabled: true
vis_type_vega.enabled: true
在 OpenSearch Dashboards 中配置 多个数据源 后,您可以使用 Vega 查询这些数据源。以下 GIF 展示了在 OpenSearch Dashboards 中创建 Vega 可视化的过程。
步骤 1:设置并连接数据源
打开 OpenSearch Dashboards 并按照以下步骤操作
- 从左侧菜单中选择 Dashboards Management。
- 选择 Data sources,然后选择 Create data source 按钮。
- 在 Create data source 页面,输入连接详情和端点 URL,如以下 GIF 所示。
- 在 Home page 上,选择 Add sample data。在 Data source 下,选择您新创建的数据源,然后为 Sample web logs 数据集选择 Add data button。
以下 GIF 展示了设置和连接数据源所需的步骤。
步骤 2:创建可视化
- 从左侧菜单中选择 Visualize。
- 在 Visualizations 页面,选择 Create Visualization,然后在弹出窗口中选择 Vega。
步骤 3:添加 Vega 规范
默认情况下,查询使用来自本地集群的数据。您可以为 Vega 规范中的每个 OpenSearch 查询分配单独的 data_source_name
值。这允许您在单个可视化中查询不同数据源中的多个索引。
- 验证您创建的数据源是否在
data_source_name
下指定。或者,在您的 Vega 规范中,在url
属性下添加data_source_name
字段,以按名称指定特定的数据源。 - 复制以下 Vega 规范,然后选择右下角的 Update 按钮。可视化应出现。
{
$schema: https://vega.github.io/schema/vega-lite/v5.json
data: {
url: {
%context%: true
%timefield%: @timestamp
index: opensearch_dashboards_sample_data_logs
data_source_name: YOUR_DATA_SOURCE_TITLE
body: {
aggs: {
1: {
date_histogram: {
field: @timestamp
fixed_interval: 3h
time_zone: America/Los_Angeles
min_doc_count: 1
}
aggs: {
2: {
avg: {
field: bytes
}
}
}
}
}
size: 0
}
}
format: {
property: aggregations.1.buckets
}
}
transform: [
{
calculate: datum.key
as: timestamp
}
{
calculate: datum[2].value
as: bytes
}
]
layer: [
{
mark: {
type: line
}
}
{
mark: {
type: circle
tooltip: true
}
}
]
encoding: {
x: {
field: timestamp
type: temporal
axis: {
title: @timestamp
}
}
y: {
field: bytes
type: quantitative
axis: {
title: Average bytes
}
}
color: {
datum: Average bytes
type: nominal
}
}
}
其他资源
以下资源提供了关于 OpenSearch Dashboards 中 Vega 可视化的更多信息