17.10 - 示例:将 SQL 语句配置为预警操作 - Teradata Viewpoint - Teradata Workload Management

Teradata® Viewpoint 用户指南

Product
Teradata Viewpoint
Teradata Workload Management
Release Number
17.10
Release Date
2021 年 10 月
Content Type
用户指南
Publication ID
B035-2206-101K-CHS
Language
中文 (简体)
假设您希望运行以下 SQL insert 语句作为 Teradata 系统 TEST1 的预警操作。

此示例仅适用于核心时间。

INSERT INTO admin.sessionHist (TheTime, UserName, SessionCount)
VALUES (CURRENT_TIMESTAMP, ${userName}, ${sessionsForUser})

当 TEST1 系统上任何用户的会话计数超过十个时,将执行此 insert 操作。

请注意上面的 insert 语句中的 ${userName}${sessionsForUser} 预警属性。 当您使用 SQL 查询传递类型配置预警操作来运行 SQL 语句时,文本中可以包含预警属性,这些属性将被替换为运行时值。有关可用于 Teradata Viewpoint 预警类型的预警属性的说明,请参见 Teradata Database 预警指标和属性

在此示例中,假定已在 TEST1 上创建了目标表 (admin.sessionHist)。例如:
CREATE TABLE admin.sessionHist
 (TheTime TIMESTAMP NOT NULL,
 UserName VARCHAR(256) NOT NULL,
 SessionCount INTEGER NOT NULL)

要将 SQL 语句配置为 Teradata 系统的预警操作,请执行以下步骤。

  1. 预警设置组件中,配置 TEST1 的登录凭据。
    1. 设置选项列表中,选择Delivery Settings (传递设置)
    2. 身份验证列表中,选择TERADATA 登录
    3. 选择TERADATA 登录旁边的 ""
    4. TDPID 框中,键入 TEST1 系统的 TDPID。
    5. 选中启用登录复选框。
    6. 输入登录名称和密码。
    7. 会话字符集列表中,选择UTF8
    8. [可选] 从测试 TERADATA 登录列表中,选择 JDBC
    9. [可选] 选择测试验证登录设置是否正确。
    10. 单击Apply (应用)
  2. 预警设置组件中,配置 TEST1 的 SQL 查询。
    1. 设置选项列表中,选择Delivery Settings (传递设置)
    2. 传递类型列表中,选择SQL Queries (SQL 查询)
    3. 选择SQL 查询旁边的 ""
    4. NAME中,键入 insertSessionHistory
    5. 选中启用复选框。
    6. SQL 中,键入:
      INSERT INTO admin.sessionHist (TheTime, UserName, SessionCount)
      VALUES (CURRENT_TIMESTAMP, ${userName}, ${sessionsForUser})
    7. 单击Apply (应用)
  3. 预警设置组件中,创建操作集
    1. 设置选项列表中,选择Alert Presets (预警预设)
    2. 预设选项列表中,选择Action Sets (操作集)
    3. 选择操作集旁边的 ""
    4. 操作集名称中,键入 runSessionCount
    5. 时间列表中,选中核心复选框,然后清除夜间周末复选框。
    6. 操作下,确保选中Include in Alert Viewer (包括在预警查看器中)复选框。
      缺省情况下会选中此选项,以便您查看在Alert Viewer (预警查看器)组件中为此操作设置的预警。
    7. 操作列表中,选中SQL复选框。
    8. 查询列表中,选择 insertSessionHistory。
    9. TDPID列表中,选择TEST1
    10. 单击Apply (应用)
  4. 在用于 Teradata Viewpoint 监控的 受监控系统组件中,配置 TEST1。
    1. 选择系统旁边的 "",然后选择Add Teradata System (添加 Teradata 系统)
    2. 系统别名中,键入 TEST1
    3. 选中Enable system (启用系统)复选框以激活要监控的 TEST1 系统。
    4. TDPID 框中,键入 TEST1 系统的 TDPID。
    5. 输入登录名称和密码。
    6. 单击Apply (应用)
  5. 受监控系统组件中,配置数据收集器。
    1. 系统列表中,选择TEST1
    2. 设置列表中,选择Data Collectors (数据收集器)
    3. 数据收集器列表中,选择会话
    4. 选中启用会话收集器复选框并保留缺省设置。
    5. 单击Apply (应用)
  6. 受监控系统组件中,定义预警规则。
    1. 系统列表中,选择TEST1
    2. 设置列表中,选择Alerts (预警)
    3. 预警类型列表中,选择会话
    4. 单击预警旁边的 ""
    5. 预警名称中,键入 userSessionCountAlert
    6. 选中已启用预警复选框。
    7. 严重程度列表中,选择
    8. 个匹配项列表中,选择全部
    9. 在列表中,选择每用户会话数大于
    10. 在列表下面的空框中,键入阈值数 10
    11. 操作列表中,选择runSessionCount
    12. 单击Apply (应用)
  7. 如果 TEST1 上的任何用户都没有超过十个会话,则可以为某个 Teradata 用户创建在打开 11 个会话时要触发的预警条件。
    例如,使用 BTEQ:
    .set sessions 11
    .logon TEST1/myUser,myPassword
  8. 在 TEST1 系统中,查看 sessionHist 表。使用 BTEQ 或 SQL 便笺等查询工具来查询该表。
    例如:
    select * from admin.sessionHist order by TheTime
    您可能需要等待几分钟时间才能触发预警,具体取决于监控 TEST1 速率的 Teradata 会话。
  9. Alert Viewer (预警查看器)组件中,查看触发的操作。