All Products
Search
Document Center

Simple Log Service:Collect Log4j logs

Last Updated:Apr 17, 2024

This topic describes how to use LogHub Log4j Appenders or Logtail to collect Log4j logs.

Background information

Log4j is an open source project of Apache. Log4j allows you to specify the level, output destination, and output format of logs. The log levels in descending order are ERROR, WARN, INFO, and DEBUG. The output destination determines whether logs are displayed in consoles or files. The output format determines the format of logs that are displayed. In this topic, the default configuration of Log4j is used. Default configuration:

<Configuration status="WARN">
  <Appenders>
    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss:SSS zzz} [%t] %-5level %logger{36} - %msg%n"/>
    </Console>
  </Appenders>
  <Loggers>
    <Logger name="com.foo.Bar" level="trace">
      <AppenderRef ref="Console"/>
    </Logger>
    <Root level="error">
      <AppenderRef ref="Console"/>
    </Root>
  </Loggers>
</Configuration>

The following example shows a Log4j log:

2013-12-25 19:57:06,954 [10.10.10.10] WARN impl.PermanentTairDaoImpl - Fail to Read Permanent Tair,key:e:470217319319741_1,result:com.example.tair.Result@172e3ebc[rc=code=-1, msg=connection error or timeout,value=,flag=0]

Use LogHub Log4j Appenders to collect Log4j logs

For more information about how to use LogHub Log4j Appenders to collect Log4j logs, see Log4j Appender.

Use Logtail to collect Log4j logs

Simple Log Service provides configuration wizards to help you create Logtail configurations. The following example describes how to collect Log4j logs in full regex mode.

  1. Log on to the Simple Log Service console.

  2. In the Import Data section, select RegEx - Text Log.

  3. Select the project and Logstore. Then, click Next.

  4. Create a machine group.

    • If a machine group is available, add the machine group to Applied Server Groups.

    • If no machine group is available, perform the following steps to create a machine group. In this example, an Elastic Compute Service (ECS) instance is used.

      1. On the ECS Instances tab, select the ECS instance and click Create.

        For more information, see Install Logtail on ECS instances.

      2. In the Parameter Confirmation dialog box, click OK.

      3. Make sure that the value of the Execution Status parameter is Success. Then, click Complete Installation.

      4. In the Create Machine Group step, enter a machine group name and retain the default settings for other parameters. Then, click Next.

        For more information, see Create an IP address-based machine group.

  5. Confirm that the machine group is displayed in the Applied Server Groups section and click Next.

    Important

    If you apply a machine group immediately after you create the machine group, the heartbeat status of the machine group may be FAIL. This issue occurs because the machine group is not connected to Simple Log Service. To resolve this issue, you can click Automatic Retry. If the issue persists, see What do I do if no heartbeat connections are detected on Logtail?

  6. In the Logtail Configuration step, create a Logtail configuration.

    For more information about Logtail-related parameters, see Logtail configuration.

  7. Preview data, configure indexes, and then click Next. For more information about indexes, see Create indexes.

  8. Click Log Query. You are redirected to the query and analysis page of your Logstore.

    You must wait approximately 1 minute for the indexes to take effect. Then, you can view the collected logs on the Raw Logs tab. For more information, see Query and analyze logs.