ログデータのOSSへのバックアップベストプラクティス(Function)¶
前提条件¶
Datakitのインストール¶
- [統合] モジュール、[Datakit] をクリックし、お使いのOSとシステムタイプに応じて適切なインストールコマンドを選択してください。
-
Datakitのインストールコマンドをコピーし、監視対象のサーバー上で直接実行してください。
-
インストールディレクトリ /usr/local/datakit/
-
ログディレクトリ /var/log/datakit/
-
メイン設定ファイル /usr/local/datakit/conf.d/datakit.conf
-
プラグイン設定ディレクトリ /usr/local/datakit/conf.d/
Functionのインストール¶
- [統合] モジュール、[Funciton] をクリックし、インストールパッケージをダウンロードしてインストールコマンドを実行してください
- インストールが完了したら、ブラウザで http://サーバーIPアドレス:8088 にアクセスし、初期化操作画面を表示します
- デフォルトのユーザー名/パスワード admin でシステムにログインします
RAMアクセス制御¶
-
RAMコンソール https://ram.console.aliyun.com/users にログインします
-
ユーザーを作成:人員管理 - ユーザー - ユーザーを作成
-
AccessKey IDとAccessKey SecretのCSVファイルを保存またはダウンロードします(設定ファイルで使用します)
-
ユーザーに権限を付与(オブジェクトストレージサービス(OSS)の権限を管理)
スクリプト開発¶
ログバックアップOSS¶
- 管理 - 実験的機能 - PIPツールモジュールを有効にする
- Alibaba Cloud SDK依存パッケージ(oss2)をインストール
- スクリプトセットを作成し、スクリプトを追加
- コードを記述します。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)
- OSSコンソールにログインしてファイルを確認









