すべてのプロダクト
Search
ドキュメントセンター

Simple Log Service:HarmonyOS用のSimple Log Service SDKの概要

最終更新日:Sep 05, 2024

Simple Log Service SDK for HarmonyOSを使用して、HarmonyOSデバイスからログを収集できます。 Simple Log Service SDK for HarmonyOSは、ArkTSに基づいたSimple Log Serviceのコレクション関連のAPI操作をカプセル化し、Cプログラミング言語で記述されています。

バージョン

Simple Log Service SDK for HarmonyOSは、OpenHarmonyパッケージ管理でホストおよびリリースされます。 詳細については、「Aliyun Log HarmonyOS SDKリリース」をご参照ください。

サンプルコード

Simple Log Service SDK for HarmonyOSには、使用または参照できるさまざまなサンプルコードが用意されています。

import hilog from '@ohos.hilog';

// Import the SDK module.
import { AliyunLog, LogCallback } from "@aliyunsls/producer"

// Initialize the SDK.
let aliyunLog: AliyunLog = new AliyunLog(
  "<your endpoint>",
  "<your project>",
  "<your logstore>",
  "<your accesskey id>",
  "<your accesskey secret>",
  "<your accesskey token>" // This variable is required only when the AccessKey pair is obtained by calling a Security Token Service (STS) operation.
);

// Write logs.
aliyunLog.addLog(new Map(
  [
    ["key1", "value1"],
    ["key2", "value2"],
    ["key3", "value3"],
  ]
));

class MyLog implements LogCallback {

  // Configure a log callback.
  init() {
    aliyunLog.setLogCallback(this);
  }

  // Write logs.
  addLog() {
    aliyunLog.addLog(new Map([
      ["key1", "val1"],
      ["key2", "val2"],
      ["key3", "val3"],
      ["key4", "val4"],
    ]))
  }

  // Process the log callback.
  // For information about the valid values of code, see the related topics.
  onLogCallback(logStore: string, code: number, logBytes: number, compressedBytes: number, errorMessage: string) {
    hilog.info(0x0000,
      'testTag',
      'onLogCallback. logStore: %{public}s, code: %{public}d, logBytes: %{public}d, compressedBytes: %{public}d, errorMessage: %{public}s',
      logStore, code, logBytes, compressedBytes, errorMessage
    );
    aliyunLog.setAccessKey(
      "<your accesskey id>", // Specify a valid AccessKey ID.
      "<your accesskey secret>", // Specify a valid AccessKey secret.
      null // Specify a valid AccessKey token. This variable is required only when the AccessKey pair is obtained by calling an STS operation.
    );
  }
}

@Entry
@Component
struct Index {
  @State message: string = 'Hello World'
  private log: MyLog = new MyLog();

  build() {
    Row() {
      Column() {
        Text("Init")
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            this.log.init();
          });
        Text("Add")
          .fontSize(50)
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            this.log.addLog();
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}

課金

Simple Log Service SDK for HarmonyOSを使用してログを収集するときに発生する料金は、Simple Log Serviceコンソールでログを収集するときに発生する料金と同じです。 詳細については、「課金の概要」をご参照ください。

関連ドキュメント