Couchbase

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Couchbase の統合により、オペレーション、メモリ使用量、エジェクションなどのバケット指標が収集されます。この統合により、ノードで公開されている Prometheus サーバーから指標が収集されます。この統合では、Couchbase の一般ログ、HTTP アクセスログ、データセンター間(goxdcr)のログも収集されます。

couchbase の詳細については、Couchbase のドキュメントをご覧ください。

前提条件

Couchbase のテレメトリーを収集するには、バージョン 2.18.2 以降の Ops エージェントをインストールする必要があります。

この統合は、Couchbase バージョン 6.5、6.6、7.0 をサポートしています。

couchbase 用に Ops エージェントを構成する

Ops エージェントの構成のガイドに従って、couchbase インスタンスからテレメトリーを収集するために必要な要素を追加し、エージェントを再起動します。

構成の例

次のコマンドは、couchbase のテレメトリーを収集して取り込み、Ops エージェントを再起動するための構成を作成します。

# Configures Ops Agent to collect telemetry from the app and restart Ops Agent.

set -e

sudo tee /etc/google-cloud-ops-agent/config.yaml > /dev/null << EOF
metrics:
  receivers:
    couchbase:
      type: couchbase
      username: admin
      password: password
      collection_interval: 30s
  service:
    pipelines:
      couchbase:
        receivers:
          - couchbase

logging:
  receivers:
    couchbase_general:
      type: couchbase_general
    couchbase_http_access:
      type: couchbase_http_access
    couchbase_goxdcr:
      type: couchbase_goxdcr
  service:
    pipelines:
      couchbase:
        receivers:
          - couchbase_general
          - couchbase_http_access
          - couchbase_goxdcr

EOF

sudo service google-cloud-ops-agent restart
sleep 30s

ログの内容

logName は、構成で指定されたレシーバ ID から取得されます。LogEntry 内の詳細なフィールドは、次のとおりです。

couchbase_general ログの LogEntry には次のフィールドが含まれます。

フィールド タイプ 説明
jsonPayload.message 文字列 ログメッセージ
jsonPayload.node_name 文字列 ログ メッセージを発行するノードの名前
jsonPayload.module_name 文字列 エントリを発行するモジュールの名前

couchbase_http_access ログの LogEntry には次のフィールドが含まれます。

フィールド タイプ 説明
jsonPayload.message 文字列 ログメッセージ
jsonPayload.client_ip 文字列 HTTP リクエストを呼び出すクライアントの IP アドレス
jsonPayload.user 文字列 基本認証が使用されている場合は、HTTP リクエストを行っているユーザー名。
jsonPayload.method 文字列 リクエストの HTTP メソッド
jsonPayload.status_code 整数 HTTP リクエストのレスポンスのステータス コード

couchbase_goxdcr ログの LogEntry には次のフィールドが含まれます。

フィールド タイプ 説明
jsonPayload.message 文字列 ログメッセージ
log_type 文字列 データセンター間ログを発行するコンポーネントの名前

指標の収集を構成する

couchbase から指標を取り込むには、couchbase が生成する指標のレシーバを作成してから、新しいレシーバ用のパイプラインを作成する必要があります。

couchbase 指標のレシーバを構成するには、次のフィールドを指定します。

フィールド デフォルト 説明
collection_interval 60s time.Duration 値(例: 30s5m)。
endpoint localhost:8091 モニタリングするノードの URL。
password couchbase サーバーへの接続に使用するパスワード。
type 値は、couchbase にする必要があります。
username couchbase サーバーへの接続に使用するユーザー名。

モニタリング対象

次の表に、Ops エージェントが couchbase インスタンスから収集する指標の一覧を示します。

指標タイプ
種類、タイプ
モニタリング対象リソース
ラベル
workload.googleapis.com/couchbase.bucket.error.oom.count
CUMULATIVEINT64
gce_instance
bucket_name
error_type
workload.googleapis.com/couchbase.bucket.item.count
GAUGEDOUBLE
gce_instance
bucket_name
state
workload.googleapis.com/couchbase.bucket.item.ejection.count
CUMULATIVEINT64
gce_instance
bucket_name
workload.googleapis.com/couchbase.bucket.memory.high_water_mark.limit
GAUGEDOUBLE
gce_instance
bucket_name
workload.googleapis.com/couchbase.bucket.memory.low_water_mark.limit
GAUGEDOUBLE
gce_instance
bucket_name
workload.googleapis.com/couchbase.bucket.memory.usage
GAUGEDOUBLE
gce_instance
bucket_name
workload.googleapis.com/couchbase.bucket.operation.count
CUMULATIVEINT64
gce_instance
bucket_name
op
workload.googleapis.com/couchbase.bucket.vbucket.count
GAUGEDOUBLE
gce_instance
bucket_name
state

ダッシュボードの例

couchbase 指標を表示するには、グラフまたはダッシュボードが構成されている必要があります。Cloud Monitoring には、統合用のサンプル ダッシュボードのライブラリが用意されています。ここには、事前に構成されたグラフが含まれています。これらのダッシュボードのインストールについては、サンプル ダッシュボードのインストールをご覧ください。

構成を確認する

このセクションでは、couchbase レシーバが正しく構成されていることを確認する方法について説明します。Ops エージェントがテレメトリーの収集を開始するまでに 1~2 分かかる場合があります。

ログが取り込まれていることを確認するには、ログ エクスプローラに移動し、次のクエリを実行して couchbase のログを表示します。

resource.type="gce_instance"
(log_id("couchbase_general") OR log_id("couchbase_http_access") OR log_id("couchbase_goxdcr"))

指標が取り込まれていることを確認するには、Metrics Explorer に移動し、[MQL] タブで次のクエリを実行します。

fetch gce_instance
| metric 'workload.googleapis.com/couchbase.bucket.memory.usage'
| every 1m

次のステップ

Ansible を使用して Ops エージェントをインストールし、サードパーティ アプリケーションを構成してサンプル ダッシュボードをインストールする方法については、Ops エージェントをインストールして、サードパーティ アプリケーションのトラブルシューティングを行うの動画をご覧ください。