
# 使用定时SQL进行日志加工
云日志服务提供定时SQL功能，用于定时分析日志内容。定时SQL支持标准的SQL语法，按照调度规则周期性执行日志分析，并将分析结果存储到目标存储位置。
![](https://support.huaweicloud.com/usermanual-lts/public_sys-resources/note_3.0-zh-cn.png)
目前此功能仅在华北-北京四、华南-广州、华东-上海一局点支持白名单用户提交工单申请使用，详细操作请参考[提交工单](https://support.huaweicloud.com/usermanual-ticket/zh-cn_topic_0127038618.html)，其他局点暂不支持该功能。
#### 前提条件
- 已成功采集到日志。
- 对源日志内容已完成结构化配置。具体操作请参考[设置云端结构化解析日志](https://support.huaweicloud.com/usermanual-lts/lts_0821.html)。
- 使用定时SQL任务上报指标时，提前创建AOM Prometheus实例。
 
#### 限制条件
最多可创建20个定时SQL任务。
#### 创建定时SQL
1. 登录[云日志服务控制台](https://console.huaweicloud.com/lts/?#/cts/manager/groups)，进入"日志管理"页面。
2. 在左侧导航栏中选择"日志加工\>定时SQL"，单击"创建定时SQL"。 
   或在左侧导航栏中选择"日志管理"，单击日志组或日志流名称，进入日志流详情页面，单击右上角日志设置，在弹出页面中，选择"定时SQL"，单击"创建定时SQL"。
   - 通过该方式创建定时SQL时，源日志组/日志流为当前所选的日志组/日志流，且无法修改。
   
   - 通过该方式创建的定时SQL任务，会同步显示在定时SQL列表中，单击任务名称可[查看详细信息]。
    
   
   
3. 在创建定时SQL页面中，配置相关参数。 
   - 在计算配置中，完成如下配置后，然后单击"下一步"。
     表1计算配置参数 
     | 参数       | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
     |:---|:---|
     | 任务名称     | 定时SQL任务的名称。仅支持输入英文、数字、中文、中划线、下划线，且不能以中划线、下划线开头或结尾，长度范围为1\~64个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
     | 描述       | 定时SQL任务的描述。长度不超过1000个字符。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
     | 源日志组/流名称 | 选择已完成结构化配置的日志组/流，即表示源日志组/流中的日志内容通过定时SQL处理后，将存储到目标日志组/日志流中。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
     | 统计类型     | - 搜索分析：新SQL引擎，使用管道符（搜索\|分析）的方式。  - SQL统计：旧SQL引擎，使用旧版SQL分析方式。 旧版SQL引擎即将下线，推荐您使用搜索分析，功能更丰富。更多语法请参考[SQL函数](https://support.huaweicloud.com/usermanual-lts/lts_07_0216.html)。                                                                                                                                                                                                                                                                                                                                                                                                   |
     | SQL语句    | 输入的查询和分析语句，定时SQL运行时，云日志服务将执行该查询和分析语句分析日志。 选择时间范围，对该范围内的日志内容进行SQL查询；单击"预览"可查询预览结果。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
     | 目标存储位置   | 选择LTS日志流，加工结果将会存储到LTS作为一条日志。 - 日志组：选择需要存储的日志组。  - 日志流：选择需要存储的日志流。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
     | 目标存储位置   | 选择AOM Prometheus实例，加工结果将会存储到AOM中为自定义指标。 委托授权：创建日志生成指标任务，需要您授权LTS创建云服务委托：lts_admin_trust。 - Prometheus实例：选择需要存储的Prometheus实例。  - 指标列：LTS会根据您在SQL语句中输入的语法聚合数据，您可以选择查询结果中列值为数值类型的一列作为指标列。只支持添加5个指标列。  - 维度列：LTS会根据您SQL语句中输入的语法聚合数据，您可以选择查询结果中的一列或者多列作为维度列。只支持添加5个维度列。  - 时间列：默认，系统将以每次任务查询时间范围中的开始时间作为时序数据的时间。  - 标签：单击"添加标签"，分别填写标签键key和标签值value。支持添加20个标签。   |
        
     
   
   - 在调度配置中，完成如下配置。
      表2调度配置参数 
     | 参数      | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
     |:---|:---|
     | 调度间隔    | 调度定时SQL任务的频率，每调度一次定时SQL任务将产生一个执行实例。调度间隔决定每个执行实例的调度时间。 - 每小时：每隔一小时调度一次定时SQL任务。  - 每天：在每天的某个固定时间点调度一次定时SQL任务。  - 每周：在周几的某个固定时间点调度一次定时SQL任务。  - 固定间隔：按照固定间隔调度定时SQL任务。  - CRON：通过CRON表达式指定时间间隔，按照指定的时间间隔调度定时SQL任务。CRON表达式的最小精度为分钟，格式为24小时制，示例如下： - 0/10 \* \* \* \*从00:00开始，每隔整10分钟查询一次，分别为10分钟、20分钟、30分钟、40分钟、50分钟、60分钟。例如：当前时间为16:37，下一次查询时间为16:50。  - 0 0/5 \* \* \*从00:00开始，每隔5小时查询一次，分别为0时、5时、10时、15时、20时。例如：当前时间为16:37，下一次查询时间为20:00。  - 0 14 \* \* \*每天14:00查询一次。  - 0 0 10 \* \*每月10日00:00查询一次。                                                                                                                                                                                                                                                                                                          |
     | 调度时间范围  | 调度的时间范围，具体说明如下： - 某时间开始：实例调度的开始时间，不设时间范围。当该作业被删除时，则不产生新实例。  - 特定时间范围：按照调度间隔生成的实例调度时间必须在该范围内，超出范围则不产生新实例。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
     | 起始时间    | 调度的起始时间。 当调度时间范围选择某时间开始时，需要设置开始时间；当调度时间范围选择特定时间范围时，需要设置起始时间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
     | SQL时间窗口 | 定时SQL任务运行时，仅分析该时间范围内的日志。时间窗口表达式的最小精度为秒（s：秒，m：分，h：小时），且SQL时间窗口设置不能超过24小时。可在下拉框中，选择5分钟、15分钟、1小时和1天。如果需要设置其他时间，可在下拉框中选择自定义，通过时间窗口表达式进行设置。时间表达式为：\[+/-{num}h+/-{num}m+/-{num}s@s,+/-{num}@h)。具体说明如下： - "\["表示包含边界。  - ")"表示不包含边界。  - "+"表示时间从当前时间开始往后算起，例如：当前时间是16：00，+1h则表示17：00。不建议使用"+"。  - "-"表示时间从当前时间往前算起，例如：当前时间是16：00，-1h则表示15：00.  - "{num}"表示时间取值，为任意整数。逗号前后的时间差值不能超过24小时。  - "@"表示取整。@h：小时取整，分钟和秒忽略不计；@m：分钟取整，秒忽略不计；@s：秒取整。   时间表达式，举例如下： - 5分钟：\[-5m@m,@m)  - 15分钟：\[-15m@m,@m)  - 1小时：\[-1h@h,@h)  - 1天：\[-24h@h,@h)  - 自定义（不超过一天）：\[-65m@h,-5m@h) 时间表达式最大值为调度间隔的五倍。    |
     | SQL超时   | 执行SQL分析操作失败时，自动重试的阈值。当超时时间超过指定的最大时间和超时次数超过最大次数时，该执行实例结束，状态为失败。 - SQL超时时间取值为60\~180秒之间。  - SQL超时次数取值为1\~10次之间。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
        
     
   
   
   
   
4. 完成后，单击"确定"。
 
 #### 查看定时SQL
在"定时SQL"页签，单击目标作业名称进入详情页面，可查看定时SQL任务的基本信息和执行实例。
每一个实例的上报的日志条数最多为100行。
#### 修改定时SQL
1. 在"定时SQL"页签，单击目标作业名称操作列对应的"修改"。
2. 在弹出的页面中，修改[表2]。
   
   定时SQL的任务名称和源日志组/流名称无法进行修改。
   
   
 
#### 删除定时SQL
![](https://support.huaweicloud.com/usermanual-lts/public_sys-resources/warning_3.0-zh-cn.png)
删除定时SQL任务会导致用户日志相关业务异常，定时SQL任务删除后无法恢复，请谨慎操作。
1. 在"定时SQL"页签，单击目标作业名称操作列对应的"删除"。 
   或单击目标作业名称，进入定时SQL任务的基本信息页面中，单击右上角"删除"。
   
   
2. 在弹出的页面中，单击"确定"可删除定时SQL任务。 
   已删除的定时SQL任务不再显示在SQL加工任务列表中，表明定时SQL任务已成功删除。
   
   
 
