GCPロギングを使いPython(Flask)のログを管理
google-cloud-logging をインストール
$ pip install google-cloud-logging
ロギング設定
from google.cloud import logging
client = logging.Client()
logger = client.logger("pronichi")
ログ用の関数
severityはログレベル(INFO,NOTICE,ERROR etc...)
ログは環境変数、URI、任意メッセージを保存することにした
ensure_ascii=False
を設定しないとコンソール表示が文字化け
def log_write(severity: str, uri: str, message: str):
tmp = {"env": APP_ENV, "uri": uri, "message": message}
tmp_json = json.dumps(tmp, ensure_ascii=False)
logger.log_text(tmp_json, severity=severity)
スクリプトにログ追加
log_write("NOTICE", "/", "テスト")
ログ確認
{
textPayload: "{"env": "prod", "uri": "/", "message": "テスト"}"
insertId: "1io3pqvgej50y6v"
resource: {2}
timestamp: "2021-02-24T16:15:50.363645648Z"
severity: "NOTICE"
logName: "projects/weekend-hackathon/logs/pronichi"
receiveTimestamp: "2021-02-24T16:15:50.363645648Z"
}
ログが出力できるようになりました
いいね!と思ったら LGTM お願いします
【PR】プログラミング新聞リリースしました! → https://pronichi.com
【PR】週末ハッカソンというイベントやってます! → https://weekend-hackathon.toyscreation.jp/about/