Salesforce Grafana 数据源
Salesforce 数据源插件允许您在 Grafana 中可视化来自 Salesforce 的数据。
要求
此插件具有以下要求
- 一个 Salesforce 帐户
- 一个 Salesforce 连接应用程序
- 以下帐户类型之一
- 适用于拥有 Grafana Cloud 免费版、高级版或试用版帐户或已 激活 Grafana Enterprise 许可证 的用户。
已知限制
- 尚不支持临时筛选器。
- 目前仅支持 SOQL 查询以及可通过 SOQL 访问的数据。SOSL 和 SAQL 查询格式尚不受支持。
安装插件
要安装数据源,请参阅 安装。
先决条件 [Salesforce 连接应用程序]
一个 Salesforce 连接应用程序。**注意:**此插件目前使用 OAuth 2.0 用户名密码流。连接应用程序中所需的回调 URL 未使用。因此,您可以将其设置为任何有效的 URL。
Grafana 插件所需的设置
基于凭据
- 启用 OAuth 设置
- 选中此选项以启用 Oauth。
- 回调 URL
- 这是 Salesforce 中的要求,但插件未使用。您可以使用任何有效的 URL。
- 选定的 OAuth 范围(最低要求)
- 访问和管理您的数据 (api)
- 刷新令牌流需要密钥
- 可以启用或禁用此选项
基于 JWT
- 启用 OAuth 设置
- 选中此选项以启用 Oauth。
- 回调 URL
- sfdc://oauth/jwt/success
启用使用数字签名并上传数字证书
- 选定的 OAuth 范围(最低要求)
- 访问和管理您的数据 (api)
- 随时代表您执行请求
- 刷新令牌流需要密钥
- 可以启用或禁用此选项
在 Grafana 中配置数据源
通过填写以下字段 添加数据源
身份验证 - JWT
- 证书
- 用作连接应用程序中数字签名的公共证书。可以是自签名证书。点击“生成”以创建自签名证书或使用您自己的证书。
- 私钥
- 证书的私钥。
- 用户名
- 您要用于连接和查询 Salesforce 的 Salesforce 帐户的用户名。
- 消费者密钥
- 连接到 Salesforce 的消费者密钥。您可以在您的连接应用程序中获取此密钥。
身份验证 - 凭据
- 用户名
- 您要用于连接和查询 Salesforce 的 Salesforce 帐户的用户名。
- 密码
- 上述用户的密码。
- 安全令牌
- 上述用户的安全令牌。
- 消费者密钥
- 连接到 Salesforce 的消费者密钥。您可以在您的连接应用程序中获取此密钥。
- 消费者密钥
- 连接到 Salesforce 的消费者密钥。您可以在您的连接应用程序中获取此密钥。
- 环境
- 默认为
Production
Salesforce 环境。如果您想使用 Salesforce 沙箱环境,请选择SandBox
。要了解有关 Salesforce 沙箱类型的更多信息,请阅读Salesforce 文档
使用配置进行数据源配置
可以使用配置文件和 Grafana 的配置系统来配置数据源。要了解更多信息,请阅读有关其工作原理以及数据源所有设置的信息,请访问配置 Grafana。
apiVersion: 1
datasources:
- name: Salesforce - user password authentication
type: grafana-salesforce-datasource
jsonData:
authType: user
user: user name
secureJsonData:
password: password
securityToken: securityToken
clientID: consumer key
clientSecret: consumer secret
- name: Salesforce - jwt authentication
type: grafana-salesforce-datasource
jsonData:
authType: jwt
user: user name
secureJsonData:
clientID: consumer key
cert: |
-----BEGIN CERTIFICATE-----
xxxxxxxxxxxxxxxxxxxxxxxxxxx
-----END CERTIFICATE-----
privateKey: |
-----BEGIN PRIVATE KEY-----
xxxxxxxxxxxxxxxxxxxxxxxxxxx
-----END PRIVATE KEY-----
要配置沙箱环境,请使用 sandbox 属性更新 jsonData 设置。
jsonData:
sandbox: true
查询数据源
查询编辑器支持 查询构建器 和 SOQL 编辑器 模式。SOQL 代表Salesforce 对象查询语言。
查询构建器也称为 SOQL 构建器
查询构建器 是一个用户友好的界面,用于构建 SOQL 查询。如果您不熟悉编写 SOQL 查询,则可以使用此模式构建 SOQL 来查询 Salesforce 对象。查询构建器中的 FROM
字段指的是 Salesforce 中的实体或实体。您需要在查询构建器中的任何其他操作之前选择 FROM
字段。选择 FROM
字段后,您需要选择构建器模式。SOQL 构建器目前支持以下模式。
模式 | 描述 |
---|---|
列表 | 列出所选表格/salesforce 中的项目及其字段。使用此模式获取结果,例如,“显示本财季创建的机会列表以及它们的名称、价值和阶段”。 |
聚合 | 聚合实体中的项目。使用此模式获取结果,例如,“计算上个月创建的机会数量”。或“按阶段名称分组的机会的总价值是多少?” |
趋势 | 显示随时间推移的聚合结果。使用此模式获取结果,例如,“按 CreatedDate 统计机会的数量”。或“按机会的关闭日期分组的 value 的总和是多少?” |
在查询编辑器中选择 实体/表格 (FROM
) 和 模式 后,使用以下选项构建您的查询。
字段 | 适用于 | 描述 |
---|---|---|
字段 (SELECT ) | 全部 | 选择您想要查看的字段列表。对于聚合或趋势视图,还可以选择您希望如何聚合值。 |
筛选器 (WHERE ) | 全部 | (可选) 指定筛选条件。结果根据您选择的条件进行筛选。 |
排序 (ORDER BY ) | 列表、聚合 | (可选) 选择您希望结果使用的字段名称和排序顺序。 |
限制 (LIMIT ) | 列表、聚合 | (可选) 限制返回的结果数。默认为 100 。 |
分组 (GROUP BY ) | 聚合 | (可选) 如果需要按任何特定字段拆分聚合值,请选择该字段。 |
时间字段 | 趋势 | 指定您希望按其对结果进行分组的日期字段。结果根据 Grafana 的时间选择器范围进行筛选。 |
在查询编辑器中配置上述字段时,您还将在查询编辑器下方看到生成的 SOQL 预览。如果您在查询构建器中遇到任何限制,可以安全地切换到 SOQL 编辑器
,您可以在其中自定义生成的 SOQL 查询。
SOQL 编辑器
原始 SOQL 编辑器提供了通过原始 SOQL 查询查询 Salesforce 对象的选项。SOQL 编辑器提供自动完成建议,例如每个表格的可用实体和相应的字段。在 SELECT 或 WHERE 后使用 Ctrl
+Space
查看每个表格的可用实体。如果在实体名称后输入一个点,您可以看到可用的字段。
筛选器限制
使用查询构建器时,如果使用复杂的筛选逻辑,查询将失败。如果查询**仅**包含多个筛选器的AND语句(或仅包含OR语句),则查询将正确返回。但是,如果同时使用AND和OR语句,则建议使用 SOQL 编辑器。如果使用嵌套筛选器,也是如此。
快捷键
按 Ctrl + Space 显示代码完成,这将显示可用的上下文选项。
Cmd + S 运行查询。
将查询作为时间序列
通过将日期字段别名为 time
,并将度量字段别名为 metric
,然后按度量和日期分组来进行时间序列查询。
以下是一个示例
SELECT sum(Amount) amount, CloseDate time, Type metric from Opportunity
group by Type, CloseDate
宏
要按仪表板时间范围筛选,您可以在 SOQL 查询中使用宏
$__timeFrom
- 将被当前活动时间选择的开始替换为
time
数据类型。 $__timeTo
- 将被当前活动时间选择的结束替换为
time
数据类型。 $__quarterStart
- 财季开始(源自 SalesForce 财年设置)
$__quarterEnd
- 财季结束(源自 SalesForce 财年设置)
SELECT UserId, LoginTime from LoginHistory where LoginTime > $__timeFrom
模板和变量
要添加新的 Salesforce 查询变量,请参阅添加查询变量。使用您的 Salesforce 数据源作为您的数据源。您可以在此处使用任何 SOQL 查询。
如果您想使用名称/值对,例如用户 ID 和用户名,请从您的 SOQL 查询中返回 2 个字段。第一个字段将用作 ID。当您想在查询编辑器 SOQL 中按密钥(ID 等)筛选时,您可能希望这样做。
通过使用变量语法在您的 SOQL 查询中使用变量。
有关变量的更多信息,请参阅模板和变量。