Todos los productos
Search
Centro de documentos

Simple Log Service:Integrate SLS SDK with agent skill

Última actualización: Sep 18, 2026

alibabacloud-sls-sdk-guidance es una Agent Skill que proporciona Simple Log Service (SLS) para escenarios de integración de SDK. Ayuda a los agentes a ofrecer mejores resultados al seleccionar SDK, configurar instalaciones y escribir código de integración.

Esta skill ofrece las siguientes capacidades:

  • Compatibilidad con múltiples lenguajes: abarca más de 10 lenguajes de SDK, entre ellos Java, Go, Python y Node.js.

  • Cobertura completa del pipeline: admite la ingesta, el consumo, la consulta de registros y la gestión de recursos.

  • Selección inteligente de SDK: recomienda automáticamente el mejor SDK y método de integración según su lenguaje de programación y caso de uso.

  • Generación instantánea de código: genera comandos de instalación de SDK, código de inicialización y ejemplos completos a partir de instrucciones en lenguaje natural.

Escenarios

Escenario

Descripción

Ejemplo de prompt

Selección de SDK

Recomienda el mejor SDK según su lenguaje de programación y caso de uso (ingesta, consumo, consulta o gestión de recursos), y explica el motivo de la elección.

Mi proyecto en Java necesita ingestión de registros de alto rendimiento hacia SLS y consumo de registros basado en Consumer Group. ¿Qué SDK debo usar?

Instalación y configuración

Proporciona configuraciones de dependencias y comandos de instalación para Maven, pip, go get, npm, NuGet, Composer, Cargo y otros administradores de paquetes.

¿Cómo instalo el SDK de SLS en un proyecto de Go? Dame el comando go get.

Ingesta de registros

Le guía para ingerir registros mediante Producer SDK, un SDK específico del lenguaje o un Appender de framework de registros. Incluye ejemplos de código completos.

Usa el Producer SDK de Java para escribir registros por lotes de forma asíncrona en SLS. Proporciona la dependencia de Maven y un ejemplo de código.

Consumo de registros

Le guía para consumir registros de un logstore de SLS mediante un consumer group, lo que incluye la implementación de Processor y la gestión de checkpoints.

Mi proyecto en Java necesita consumir registros de SLS mediante Consumer Group con checkpoint automático y balanceo de carga entre varias instancias. Proporciona el código.

Integración de Appender

Le guía para integrar aplicaciones de Log4j, Log4j 2 o Logback con SLS mediante archivos de configuración, sin modificar el código.

Mi proyecto usa Log4j 2. ¿Cómo envío registros a SLS mediante un Appender? Proporciona la dependencia de Maven y la configuración de log4j2.xml.

Comparación de SDK

Explica las diferencias entre las familias de SDK alibabacloud (OpenAPI) y aliyun (tradicional), así como los escenarios más adecuados para cada una.

¿Cuál es la diferencia entre alibabacloud_sls20201230 y aliyun-log-python-sdk? Necesito ingerir registros y gestionar recursos. ¿Cuál debo instalar para cada tarea?

Requisitos previos

  • Las credenciales de la cuenta de Alibaba Cloud (AccessKey ID y AccessKey Secret) son obligatorias únicamente cuando su código de SDK accede a recursos de SLS.

  • Debe contar con como mínimo un agente compatible con la instalación de skills, por ejemplo Qoder, Claude Code, Codex u OpenClaw.

Aviso

Para evitar filtraciones de credenciales, no pegue su AccessKey ID ni su AccessKey Secret en las conversaciones con el agente. Los ejemplos de código que genera esta skill leen las credenciales desde variables de entorno.

Instalar la skill

alibabacloud-sls-sdk-guidance se publica en Alibaba Cloud Skills, ClawHub y otras plataformas. Puede instalarla con cualquiera de los métodos a continuación.

Método 1 (recomendado): instalar con npx

El comando npx se incluye con Node.js. Antes de la instalación, ejecute los siguientes comandos para comprobar que Node.js está disponible:

node -v
npx -v

Si la terminal indica que no se encuentra node o npx, descargue e instale Node.js desde el sitio web oficial de Node.js.

Ejecute el siguiente comando para instalar la skill alibabacloud-sls-sdk-guidance:

npx skills add aliyun/alibabacloud-aiops-skills --skill alibabacloud-sls-sdk-guidance --full-depth

Método 2: instalación manual

Descargue el paquete alibabacloud-sls-sdk-guidance desde GitHub Releases. Extraiga el paquete y copie su contenido en el directorio de instalación de skills de su agente. Compruebe que el directorio alibabacloud-sls-sdk-guidance existe dentro de la carpeta de skills y, a continuación, reinicie el agente para cargar la skill.

La siguiente tabla muestra los directorios de instalación de skills para los agentes más comunes:

Agente

Directorio a nivel de proyecto

Directorio a nivel de usuario

Claude Code

.claude/skills

~/.claude/skills

Codex

.agents/skills

~/.agents/skills

Qoder

.qoder/skills

~/.qoder/skills

QwenCode

.qwen/skills

~/.qwen/skills

OpenClaw

.openclaw/skills

~/.openclaw/skills

Guía de uso

Una vez instalada, describa sus requisitos de SDK en la conversación con el agente para activar la skill. El agente sigue la tabla de enrutamiento de SDK y las reglas de selección integradas para recomendar el mejor SDK. Además, proporciona comandos de instalación y ejemplos de código.

Recomendaciones para redactar prompts

Para que el agente recomiende SDK y genere código con mayor precisión, incluya la siguiente información en sus prompts:

  • Lenguaje de programación y versión. Por ejemplo, "Java 17" o "Go 1.21".

  • Caso de uso. Por ejemplo, "ingestión de registros de alto rendimiento", "consumo de registros basado en Consumer Group", "consultar registros" o "crear configuración de índice".

  • Pila tecnológica existente. Por ejemplo, "proyecto Spring Boot" o "el proyecto ya usa Log4j 2".

Nota

Los nombres de proyectos, los nombres de logstore y el código de los siguientes ejemplos tienen fines exclusivamente demostrativos. Sustitúyalos por los nombres reales de sus recursos cuando utilice la skill.

Escenario 1: seleccionar el SDK adecuado para su caso de uso

Prompt

Mi proyecto en Java necesita ingestión de registros de alto rendimiento hacia Alibaba Cloud SLS y consumo de registros basado en Consumer Group para procesamiento en tiempo real. ¿Qué SDK debo usar? Proporciona las dependencias de Maven para cada uno.

Ejemplo de respuesta del agente

Based on your requirements, I recommend the following two SDKs for ingestion and consumption respectively:

### Ingestion: aliyun-log-java-producer

For high-throughput log ingestion in Java, use the Producer SDK instead of the basic Java SDK's PutLogs API.
The Producer provides asynchronous non-blocking sending, automatic batching, automatic retries, and memory throttling. It is suitable for big data scenarios such as Flink and Spark.

Maven dependency:

<dependency>
  <groupId>com.aliyun.openservices</groupId>
  <artifactId>aliyun-log-producer</artifactId>
  <version>0.3.25</version>
</dependency>

### Consumption: loghub-client-lib (aliyun-log-consumer-java)

For Consumer Group scenarios, use the Consumer Library. It automatically handles shard assignment, heartbeat,
checkpoint persistence, and multi-instance load balancing. You only need to implement the processing logic for a single shard.

<dependency>
  <groupId>com.aliyun.openservices</groupId>
  <artifactId>loghub-client-lib</artifactId>
  <version>0.6.50</version>
</dependency>
<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-java</artifactId>
  <version>2.5.0</version>
</dependency>

### Why not use the basic Java SDK?

aliyun-log-java-sdk supports ingestion and querying, but its ingestion uses the synchronous PutLogs API without
batching or retries. This is insufficient for high-throughput scenarios. Consumption requires a separate Consumer Library.

Escenario 2: ingerir registros con el Producer SDK de Java

Prompt

Mi proyecto Java Spring Boot necesita usar Producer SDK para escribir registros de negocio de forma asíncrona en SLS. El proyecto es prod-web, el logstore es app-logs y la región es China (Hangzhou). Proporciona un ejemplo de código completo.

Ejemplo de respuesta del agente

I recommend using aliyun-log-java-producer, which provides asynchronous sending, automatic batching, and automatic retries.
It is suitable for high-throughput server-side log ingestion.

### Maven dependency

<dependency>
  <groupId>com.aliyun.openservices</groupId>
  <artifactId>aliyun-log-producer</artifactId>
  <version>0.3.25</version>
</dependency>

### Code sample

import com.aliyun.openservices.aliyun.log.producer.LogProducer;
import com.aliyun.openservices.aliyun.log.producer.ProducerConfig;
import com.aliyun.openservices.aliyun.log.producer.ProjectConfig;
import com.aliyun.openservices.log.common.LogItem;

// 1. Create a Producer (global singleton, thread-safe)
ProducerConfig producerConfig = new ProducerConfig();
LogProducer producer = new LogProducer(producerConfig);
producer.putProjectConfig(new ProjectConfig(
    "prod-web", "cn-hangzhou.log.aliyuncs.com",
    System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"),
    System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET")));

// 2. Build a log entry and send (asynchronous, returns immediately)
LogItem item = new LogItem();
item.PushBack("level", "INFO");
item.PushBack("service", "order-service");
item.PushBack("message", "Order created successfully");
item.PushBack("orderId", "202604240001");
producer.send("prod-web", "app-logs", "", "", item);

Escenario 3: consumir registros con un Consumer Group de Java

Prompt

Mi proyecto en Java necesita consumir registros de un logstore de SLS en tiempo real, con checkpoint automático y balanceo de carga entre varias instancias. El proyecto es prod-web y el logstore es app-logs. Proporciona el código completo de Consumer Group.

Ejemplo de respuesta del agente

I recommend using aliyun-log-consumer-java (loghub-client-lib). It automatically handles shard assignment,
heartbeat, checkpoint persistence, and multi-instance load balancing. You only need to implement the ILogHubProcessor interface.

### Maven dependency

<dependency>
  <groupId>com.aliyun.openservices</groupId>
  <artifactId>loghub-client-lib</artifactId>
  <version>0.6.50</version>
</dependency>
<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-java</artifactId>
  <version>2.5.0</version>
</dependency>

### Start the Consumer Worker

LogHubConfig config = new LogHubConfig(
    "my-consumer-group",
    "consumer-1",          // Must be unique within the same consumer group
    "cn-hangzhou.log.aliyuncs.com",
    "prod-web", "app-logs",
    System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"),
    System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"),
    LogHubConfig.ConsumePosition.BEGIN_CURSOR);

ClientWorker worker = new ClientWorker(new SampleProcessorFactory(), config);
Thread thread = new Thread(worker);
thread.start();

// Shut down gracefully when the process exits
Runtime.getRuntime().addShutdownHook(new Thread(() -> {
    worker.shutdown();
    try { Thread.sleep(30_000); } catch (InterruptedException ignored) {}
}));

Escenario 4: integrar un Appender de Log4j 2 sin modificar el código

Prompt

Mi proyecto en Java ya usa Log4j 2 para los registros. Quiero enviarlos directamente a Alibaba Cloud SLS sin modificar el código de la aplicación. ¿Cómo lo configuro?

Ejemplo de respuesta del agente

I recommend using aliyun-log-log4j2-appender. You only need to add a Maven dependency and update the log4j2.xml
configuration. No changes to your application code are required. The Appender uses the Java Producer under the hood
to send logs asynchronously in batches.

### Maven dependency

<dependency>
  <groupId>com.aliyun.openservices</groupId>
  <artifactId>aliyun-log-log4j2-appender</artifactId>
  <version>0.1.15</version>
</dependency>
<dependency>
  <groupId>com.google.protobuf</groupId>
  <artifactId>protobuf-java</artifactId>
  <version>2.5.0</version>
</dependency>

### log4j2.xml configuration

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
  <Appenders>
    <Loghub name="Loghub"
            project="your_project"
            logStore="your_logstore"
            endpoint="cn-hangzhou.log.aliyuncs.com"
            accessKeyId="${env:ALIBABA_CLOUD_ACCESS_KEY_ID}"
            accessKeySecret="${env:ALIBABA_CLOUD_ACCESS_KEY_SECRET}"
            totalSizeInBytes="104857600"
            maxBlockMs="0"
            ioThreadCount="8"
            batchSizeThresholdInBytes="524288"
            batchCountThreshold="4096"
            lingerMs="2000"
            retries="10"
            baseRetryBackoffMs="100"
            maxRetryBackoffMs="50000"
    />
  </Appenders>
</Configuration>

Preguntas frecuentes

¿Qué SDK y lenguajes de programación son compatibles?

Esta skill abarca 10 plataformas de lenguajes: Java, Go, Python, Node.js, PHP, .NET, Rust, C/C++, iOS y Android. Admite más de 20 SDK, entre los que se incluyen SDK específicos de cada lenguaje, Producer SDK, consumer library, los Appender de Log4j, Log4j 2 y Logback, además de los SDK de OpenAPI de alibabacloud.

¿En qué casos no conviene usar esta skill?

  1. Para consultas de registros ad-hoc, sencillas o ejecutadas mediante scripts de operaciones, no es necesario escribir código de SDK. Se recomienda utilizar la skill alibabacloud-sls-query, que consulta registros a través de CLI y resulta más rápida y ligera.

  2. Cuando su flujo de trabajo del agente requiere generar consultas dinámicas, se recomienda emplear la skill alibabacloud-sls-query. El agente genera comandos de CLI e instrucciones de consulta con mayor flexibilidad, y puede procesar la salida de registros con herramientas de línea de comandos.

Enlaces relacionados