検索

18.10. チュートリアル: ロギング

download PDF

Red Hat OpenShift Service on AWS (ROSA) では、さまざまな方法でログを表示できます。以下の手順では、ログを AWS CloudWatch に転送し、oc logs を使用して Pod から直接ログを表示します。

注記

ROSA にはロギングソリューションが事前設定されていません。

18.10.1. CloudWatch へのログの転送

ログを AWS CloudWatch に転送するには、ロギングアドオンサービスをインストールします。

  1. 次のスクリプトを実行して、ROSA クラスターからログを CloudWatch に転送するように設定します。

    $ curl https://raw.githubusercontent.com/openshift-cs/rosaworkshop/master/rosa-workshop/ostoy/resources/configure-cloudwatch.sh | bash
    注記

    ROSA からログを CloudWatch に送信するように設定する方法は、このチュートリアルの範囲を超えています。AWS との統合と CloudWatch ロギングの有効化は、ROSA の重要な側面です。そのため、設定プロセスを簡素化するために、スクリプトが同梱されています。このスクリプトにより、AWS CloudWatch が自動的に設定されます。スクリプトを調べると、必要な手順を理解することができます。

    出力例

    Varaibles are set...ok.
    Policy already exists...ok.
    Created RosaCloudWatch-mycluster role.
    Attached role policy.
    Deploying the Red Hat OpenShift Logging Operator
    namespace/openshift-logging configured
    operatorgroup.operators.coreos.com/cluster-logging created
    subscription.operators.coreos.com/cluster-logging created
    Waiting for Red Hat OpenShift Logging Operator deployment to complete...
    Red Hat OpenShift Logging Operator deployed.
    secret/cloudwatch-credentials created
    clusterlogforwarder.logging.openshift.io/instance created
    clusterlogging.logging.openshift.io/instance created
    Complete.

  2. 数分後、AWS CloudWatch 内にロググループが表示され始めます。次のコマンドを実行してロググループを表示します。

    $ aws logs describe-log-groups --log-group-name-prefix rosa-mycluster

    出力例

    {
        "logGroups": [
            {
                "logGroupName": "rosa-mycluster.application",
                "creationTime": 1724104537717,
                "metricFilterCount": 0,
                "arn": "arn:aws:logs:us-west-2:000000000000:log-group:rosa-mycluster.application:*",
                "storedBytes": 0,
                "logGroupClass": "STANDARD",
                "logGroupArn": "arn:aws:logs:us-west-2:000000000000:log-group:rosa-mycluster.application"
            },
            {
                "logGroupName": "rosa-mycluster.audit",
                "creationTime": 1724104152968,
                "metricFilterCount": 0,
                "arn": "arn:aws:logs:us-west-2:000000000000:log-group:rosa-mycluster.audit:*",
                "storedBytes": 0,
                "logGroupClass": "STANDARD",
                "logGroupArn": "arn:aws:logs:us-west-2:000000000000:log-group:rosa-mycluster.audit"
            },

18.10.2. ストリームとログへのデータの出力

  1. メッセージを stdout に出力します。

    1. OSToy アプリケーションで、Home をクリックし、Log Message (stdout) のメッセージボックスをクリックします。
    2. stdout ストリームに出力するメッセージ ("All is well!" など) を書き込みます。
    3. Send Message をクリックします。

      cloud experts deploying application logging ostoy stdout

  2. メッセージを stderr に出力します。

    1. Log Message (stderr) のメッセージボックスをクリックします。
    2. stderr ストリームに出力するメッセージ ("Oh no! Error!" など) を書き込みます。
    3. Send Message をクリックします。

      cloud experts deploying application logging ostoy stderr

18.10.3. oc コマンドを使用したアプリケーションログの表示

  1. コマンドラインインターフェイス (CLI) で次のコマンドを入力して、フロントエンド Pod の名前を取得します。

    $ oc get pods -o name

    出力例

    pod/ostoy-frontend-679cb85695-5cn7x 1
    pod/ostoy-microservice-86b4c6f559-p594d

    1
    Pod 名は ostoy-frontend-679cb85695-5cn7x です。
  2. 次のコマンドを実行して、stdoutstderr 両方のメッセージを表示します。

    $ oc logs <pod-name>

    出力例

    $ oc logs ostoy-frontend-679cb85695-5cn7x
    [...]
    ostoy-frontend-679cb85695-5cn7x: server starting on port 8080
    Redirecting to /home
    stdout: All is well!
    stderr: Oh no! Error!

18.10.4. CloudWatch でのログの表示

  1. AWS Web コンソールCloudWatch に移動します。
  2. 左側のメニューで、Logs をクリックし、Log groups をクリックして、さまざまなロググループを表示します。次の 3 つのグループがあるはずです。

    • rosa-<cluster-name>.application
    • rosa-<cluster-name>.audit
    • rosa-<cluster-name>.infrastructure

      cloud experts deploying application logging cw

  3. rosa-<cluster-name>.application をクリックします。
  4. フロントエンド Pod のログストリームをクリックします。

    cloud experts deploying application logging logstream2

  5. stdoutstderr のフィルター。
  6. 行を展開すると、以前に入力したメッセージやその他の関連情報が表示されます。

    cloud experts deploying application logging stderr

  7. ログストリームに戻り、マイクロサービスを選択します。
  8. 検索バーに "microservice" と入力して、ログ内の他のメッセージを確認します。
  9. エントリーの 1 つを展開すると、フロントエンド Pod がマイクロサービスから受信した色と、その色をフロントエンド Pod に送信した Pod が表示されます。

    cloud experts deploying application logging messages

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.