Help Center/ Log Tank Service/ User Guide/ Log Processing/ Processing Logs with SQL Scheduled Jobs
Updated on 2024-09-19 GMT+08:00

Processing Logs with SQL Scheduled Jobs

LTS supports SQL scheduled jobs, allowing you to periodically analyze log content. SQL scheduled jobs use standard SQL syntax to periodically analyze logs as configured in scheduling rules, and store analysis results to a target log stream.

Currently, this function is available only to whitelisted users in regions CN North-Beijing4, CN South-Guangzhou, and CN East-Shanghai1. To use it, submit a service ticket.

Prerequisites

Restrictions

A maximum of 20 SQL scheduled jobs can be created.

Creating a SQL Scheduled Job

  1. Log in to the LTS console.
  2. Choose Log Jobs in the navigation pane and click SQL Scheduled Jobs > Create SQL Scheduled Job.

    Alternatively, choose Log Management in the navigation pane and click the name of a log group or log stream. On the log stream details page, click . On the displayed page, click SQL Scheduled Jobs > Create SQL Scheduled Job.
    • When creating a SQL scheduled job on the log stream details page, the source log group/stream cannot be changed.
    • The created job is displayed in the SQL scheduled job list. To view details, click the job name.

  3. On the Create SQL Scheduled Job page, configure required parameters.

    • In the Configure Computation step, complete the following settings and click Next.
      Table 1 Computation parameters

      Parameter

      Description

      Job Name

      SQL scheduled job name. Enter 1 to 64 characters, including letters, digits, hyphens (-), and underscores (_). Do not start or end with a hyphen or underscore.

      Description

      Description of the SQL scheduled job. Enter up to 1000 characters.

      Source Log Group/Stream

      Select a log group/stream for which log structuring has been enabled. Log content in the source log group/stream will be stored in the target log group/stream after being processed by the SQL scheduled job.

      Statistics

      By SQL: uses the old SQL engine.

      SQL Code

      Enter a query and analysis statement, which will be executed to analyze logs during the SQL scheduled job execution.

      Specify a time range to query logs from. Click Preview to preview the result.

      Target Log Group/Stream

      Log group/stream that store the SQL analysis results.

    • Configure the following scheduling parameters.
      Table 2 Scheduling parameters

      Parameter

      Description

      Interval

      Frequency of executing the SQL scheduled job. An execution instance is generated every time the job is executed. The interval determines the time of each execution instance.

      • Hourly: The job is executed every hour.
      • Daily: The job is executed at a fixed time every day.
      • Weekly: The job is executed at a fixed time on a fixed day in a week.
      • Custom interval: The job is executed at a specified interval.
      • CRON: The job is executed at the interval defined in a cron expression. Cron expressions use the 24-hour format and are precise down to the minute. Examples:
        • 0/10 * * * *: The query starts from 00:00 and is performed every 10 minutes at 00:00, 00:10, 00:20, 00:30, 00:40, 00:50, 01:00, and so on. For example, if the current time is 16:37, the next query is at 16:50.
        • 0 0/5 * * *: The query starts from 00:00 and is performed every 5 hours at 00:00, 05:00, 10:00, 15:00, 20:00, and so on. For example, if the current time is 16:37, the next query is at 20:00.
        • 0 14 * * *: The query is performed at 14:00 every day.
        • 0 0 10 * *: The query is performed at 00:00 on the 10th day of every month.

      Scheduling Time Range

      Scheduling time range. Options:

      • Start time: The scheduling starts from a specified time, and no time range needs to be set. If the job is deleted, no new instances will be generated.
      • Time range: The scheduling time defined by the interval must be within this range. Otherwise, no new instances will be generated.

      Start Time

      The time when the job will first be executed.

      Set the start time or the time range based on the scheduling time range you select.

      SQL Window

      Runtime of the SQL scheduled job. Only logs in this period will be analyzed. The time expression can be precise to second (s: second; m: minute; h: hour), and the maximum period is 24 hours. Select 5 minutes, 15 minutes, 1 hour, or 1 day from the drop-down list, or select Custom and enter a time expression. Format: [+/-{num}h+/-{num}m+/-{num}s@s,+/-{num}@h), where:

      • [: Indicates that the endpoint is included.
      • ): Indicates that the endpoint is excluded.
      • +: Indicates that the time starts forward from the current time. For example, if the current time is 16:00, +1h means 17:00. The plus sign (+) is not recommended.
      • -: Indicates that the time starts backward from the current time. For example, if the current time is 16:00, -1h means 15:00.
      • {num}: Indicates an integer. The time difference before and after the comma cannot exceed 24 hours.
      • @: Indicates rounding up. @h means rounding up to the nearest hour while ignoring the minute and second. @m means rounding up to the nearest minute while ignoring the second. @s means rounding up to the nearest second.

      Example time expressions:

      • 5 minutes: [-5m@m,@m)
      • 15 minutes: [-15m@m,@m)
      • 1 hour: [-1h@h,@h)
      • 1 day: [-24h@h,@h)
      • Custom (no more than one day): [-65m@h,-5m@h)
        NOTE:

        The maximum interval indicated by a time expression is five times the scheduling interval.

      Timeout

      Threshold for automatic retry when the SQL analysis fails. An execution instance ends if it reaches the specified timeout or has timed out for the specified number of times. The status of the instance is Failed.

      • Timeout: 60–180 seconds
      • Timeout times: 1–10

  4. Click OK.

Viewing a SQL Scheduled Job

  1. On the SQL Scheduled Jobs tab page, click the name of the target job to view its details, including the basic information and execution instance.

    A maximum of 100 logs can be reported for each instance.

Modifying a SQL Scheduled Job

  1. On the SQL Scheduled Jobs tab page, locate the target job and click Modify in the Operation column.
  2. On the displayed page, modify the settings by referring to Table 2.

    The SQL scheduled job name and source log group/stream names cannot be modified.

Deleting a SQL Scheduled Job

  1. On the SQL Scheduled Jobs tab page, locate the target job and click Delete in the Operation column.

    Alternatively, click the name of the target job. On the displayed page, click Delete in the upper right corner.

  2. Click OK.