コンテンツにスキップ

ログデータのOSSへのバックアップベストプラクティス(Function)


前提条件

Datakitのインストール

  1. [統合] モジュール、[Datakit] をクリックし、お使いのOSとシステムタイプに応じて適切なインストールコマンドを選択してください。

image.png

  1. Datakitのインストールコマンドをコピーし、監視対象のサーバー上で直接実行してください。

  2. インストールディレクトリ /usr/local/datakit/

  3. ログディレクトリ /var/log/datakit/

  4. メイン設定ファイル /usr/local/datakit/conf.d/datakit.conf

  5. プラグイン設定ディレクトリ /usr/local/datakit/conf.d/

Functionのインストール

  1. [統合] モジュール、[Funciton] をクリックし、インストールパッケージをダウンロードしてインストールコマンドを実行してください

image.png

  1. インストールが完了したら、ブラウザで http://サーバーIPアドレス:8088 にアクセスし、初期化操作画面を表示します

image.png

  1. デフォルトのユーザー名/パスワード admin でシステムにログインします

image.png

RAMアクセス制御

  1. RAMコンソール https://ram.console.aliyun.com/users にログインします

  2. ユーザーを作成:人員管理 - ユーザー - ユーザーを作成

image.png

  1. AccessKey IDとAccessKey SecretのCSVファイルを保存またはダウンロードします(設定ファイルで使用します)

  2. ユーザーに権限を付与(オブジェクトストレージサービス(OSS)の権限を管理)

image.png

スクリプト開発

ログバックアップOSS

  1. 管理 - 実験的機能 - PIPツールモジュールを有効にする

image.png

  1. Alibaba Cloud SDK依存パッケージ(oss2)をインストール

image.png

  1. スクリプトセットを作成し、スクリプトを追加

image.png

  1. コードを記述します。AccessKey ID、AccessKey Secret、Bucket Name、Filenameを入力する必要があります

参考ドキュメント

import time
import json
import oss2

@DFF.API('Run DQL via DataKit')
def run_dql_via_datakit():
    datakit = DFF.SRC('datakit')
    # time_rangeパラメータを使用し、直近10分のデータに制限
    time_range = [
        int(time.time() - 600) * 1000,
        int(time.time()) * 1000,
    ]
    # DQLクエリ文
    status_code, result = datakit.query(dql='L::`apache`', time_range=time_range, raw=True)
    result = (json.dumps(result, indent=2))
    # OSS情報を設定
    auth = oss2.Auth('AccessKey ID', 'AccessKey Secret')
    bucket = oss2.Bucket(auth, 'https://oss-cn-hangzhou.aliyuncs.com', 'Bucket Name')
    file = bucket.put_object('Filename.txt', result)
  1. OSSコンソールにログインしてファイルを確認

image.png

フィードバック

このページは役に立ちましたか?