Todos os produtos
Search
Central de documentação

Simple Log Service:Guia de início rápido do SDK para HarmonyOS

Última atualização: Jul 03, 2026

Colete dados de log de dispositivos HarmonyOS com o SDK do Simple Log Service para HarmonyOS.

Pré-requisitos

Instale o SDK do Simple Log Service para HarmonyOS. Para mais informações, consulte Instalar o SDK para HarmonyOS.

Inicializar o SDK

Use o código a seguir para inicializar o SDK.

import { AliyunLog, LogCallback } from "@aliyunsls/producer"

let aliyunLog: AliyunLog = new AliyunLog(
  "<your endpoint>",
  "<your project>",
  "<your logstore>",
  "<your accesskey id>",
  "<your accesskey secret>",
  "<your accesskey token>" // Required only when the AccessKey is obtained through STS.
);

A tabela a seguir descreve os parâmetros.

Variável

Descrição

Exemplo

endpoint

O endpoint é o nome de domínio para acessar o Simple Log Service. O endpoint varia conforme a região do projeto. Para mais informações, consulte Endpoints.

cn-hangzhou.log.aliyuncs.com

project

Project name: O projeto é a unidade de gerenciamento de recursos no Simple Log Service e define o limite principal para isolamento de usuários e controle de acesso. Para mais informações, consulte Gerenciar projetos.

test-project

logstore

Logstore name: O Logstore é a unidade do Simple Log Service para coleta, armazenamento e consulta de dados de log. Para mais informações, consulte Gerenciar Logstores.

test-logstore

accesskey id

O AccessKey ID identifica o usuário. Para mais informações, consulte Par de AccessKey.

Siga o princípio do menor privilégio e conceda apenas as permissões necessárias aos usuários RAM. Para saber como conceder permissões, consulte Criar um usuário RAM e conceder permissões e Exemplos de autorização personalizada no RAM.

Nenhum

accesskey secret

O AccessKey secret é a chave usada para criptografar strings de assinatura. O Simple Log Service usa essa chave para validar as assinaturas. Mantenha seu AccessKey secret em sigilo.

Nenhum

accesskey token

Token do AccessKey. Necessário apenas quando o AccessKey é obtido por meio do STS.

Reportar logs

Use o método addLog para reportar logs personalizados de negócios.

let code = aliyunLog.addLog(new Map(
  [
    ["key1", "value1"],
    ["key2", "value2"],
    ["key3", "value3"],
  ]
));

Um log é reportado com sucesso somente quando code == 0. Para detalhes sobre outros códigos de status, consulte Códigos de status.

Configurar um AccessKey

O SDK suporta atualizações dinâmicas de AccessKey. Use o código abaixo para atualizar o AccessKey:

aliyunLog.setAccessKey(
    "<your accesskey id>", // Enter the correct AccessKey ID.
    "<your accesskey secret>", // Enter the correct AccessKey secret.
    null // Enter the correct AccessKey token. This is required only when the AccessKey is obtained through STS.
);

Definir um callback de envio de logs

Defina um callback de envio de logs para receber notificações de status de cada tentativa de entrega. Use esse callback para monitorar as operações do SDK ou atualizar parâmetros.

class MyLogCallback implements LogCallback {

    init() {
        aliyunLog.setLogCallback(this);
    }

    onLogCallback(logStore:string, code:number, logBytes:number, compressedBytes:number, errorMessage:string) {
        // An error code of 6 indicates that the AccessKey is invalid.
        // An error code of 11 indicates a parameter configuration error.
        if (code == 6 || code == 11) {
            aliyunLog.setAccessKey(
                    "<your accesskey id>", // Enter the correct AccessKey ID.
                    "<your accesskey secret>", // Enter the correct AccessKey secret.
                    null // Enter the correct AccessKey token. This is required only when the AccessKey is obtained through STS.
            );
        }
    }
}

Códigos de status

Código de status

Descrição

Solução

0

Sucesso

Normal. Nenhuma ação necessária.

1

SDK destruído ou inválido.

Verifique se houve falha na inicialização do SDK.

2

Erro de gravação de dados.

O projeto atingiu o limite de tráfego de gravação. Caso precise de um limite maior, abra um ticket para contatar o suporte técnico.

3

Cache cheio.

abra um ticket para contatar o suporte técnico.

4

Erro de rede.

Verifique sua conectividade de rede e tente novamente.

5

Cota de gravação do projeto esgotada.

O projeto atingiu o limite de tráfego de gravação. Caso precise de um limite maior, abra um ticket para contatar o suporte técnico.

6

AccessKey expirado ou inválido.

O AccessKey está expirado, é inválido ou a política de acesso da conta associada está incorreta. Verifique a política de acesso do usuário RAM. O usuário RAM precisa ter permissões para operar nos recursos do Simple Log Service. Para mais informações, consulte Conceder permissões a um usuário RAM.

7

Erro de serviço.

Ocorreu uma falha no serviço. abra um ticket para contatar o suporte técnico.

8

Dados descartados.

Esse erro geralmente ocorre quando o horário do dispositivo não está sincronizado com o servidor. O SDK reenvia os dados automaticamente.

9

Horário do dispositivo dessincronizado com o servidor.

O horário do dispositivo não está sincronizado com o servidor. O SDK resolve essa questão automaticamente.

10

Dados em cache não foram enviados durante a destruição do SDK.

Isso pode causar perda de dados. Ative o recurso de upload retomável para evitar perdas.

11

Erro nos parâmetros de inicialização do SDK.

Geralmente causado pela falta de configuração do AccessKey ou por configurações incorretas de endpoint, projeto ou Logstore. Revise as definições dos parâmetros e tente novamente.

99

Falha ao gravar dados em cache no disco.

A operação de gravação falhou devido a caminho de arquivo de cache incorreto, cache cheio ou espaço em disco insuficiente.