Oracle監視

データベースのパフォーマンス、使用状況、可用性を大規模に分析し、リソース効率を高め、エンドユーザーエクスペリエンスの問題を最適化します。

Oracleは、主にエンタープライズのグリッドコンピューティング向けに設計された、オブジェクトリレーショナルデータベース管理システムです。情報やアプリケーションを管理し、表領域を使用して論理データストレージを提供します。

データベースのステータスを監視し、問題のあるサーバーとリソース領域を迅速に特定、修正するためには、そのパフォーマンスを監視することが重要です。

  • メモリーおよびディスク領域メトリクスを把握し、Oracle DBプロセスに十分なリソースがあることを確認します。
  • レスポンスタイムを監視し、データベースのレスポンスタイムが適切でないサービスがないか確認します。
  • 表領域に空きがあるか、および表領域の容量を増やすために適切なアクションが必要かどうかを確認します。
  • Oracleセッション数を追跡して、サーバーのビジー状態および継続的に機能していることを確認します。

このページでは、断続的なパフォーマンスを確保するための 監視メトリクスと について説明します。プラグインのインストール手順 .

パフォーマンス監視メトリクス

Oracleデータベース全体の監視 (oracle.py)

Buffer Cache Hit Ratio

buffer_cache_hit_ratioメトリクスは、インスタンスの存続期間中に、Oracleが必要とするデータブロックをメモリー内で検出する割合を表示します。このメトリクスは、バッファープールのサイズが小さいデータベースで重要になります。

Disk and Memory Sort Ratio

disk_memory_sort_ratioメトリクスは、ディスクまたはメモリーのソートを実行する必要があるセッション数の割合を表示します。過度なソートアクティビティは、データベース全体のパフォーマンスを低下させる可能性があります。

Oracle Status

oracle_status メトリクスは、データベースが稼働しているかどうかを通知する際に使用します。業務上重要なメトリクスの監視、アラームの生成、およびデータベースの停止時に、アクションを自動実行することができます。

Response Time

response_time メトリクスは、各トランザクションのデータベース操作時間を表示します(単位:ミリ秒)。リソース不足や競合によるワークロードの変更処理をするデータベースの容量が確認できます。

Process Usage Percentage

Use the metric processes_usage メトリクスは、Oracleデータベースに接続できるオペレーティングシステム(OS)ユーザープロセスの最大同時接続数の割合を表示します。これにはバックグラウンドプロセスも含まれます。

Sessions Usage

The sessions_usage メトリクスは、データベースで使用するセッション最大数の割合を表示します。各ログインでセッションが作成されると、システムの最大同時ユーザー数を決定できます。

表領域の監視

注記: 表領域のステータスと使用状況のみを監視する場合は、oracle_tablespace_usage.py プラグインを使用します。

Tablespace Status and its Usage (in %)

tablespace_status が[Read Write]、[Read Only]または[Offline]のいずれかであることを確認します。 tablespace_usage_percent は、データベースでのデータの増加を追跡し、適切なタイミングで適切なプロビジョニングが行われていることを確認します。

Number of Reads & Writes in a Tablespace

The reads および writes メトリクスは、物理的な読み取りおよび書き込み数を表示します。読み取りおよび書き込み数の合計は、特定ディスクのI/Oアクティビティを示します。

Free Blocks

free_blocks メトリクスは、表、インデックス、クラスタセグメントに対するOracleのフリーリストグループのブロック数を表示します。

Used and Free Space (in MB

used_space および free_space メトリクスは、表領域の空きおよび使用されたシーケンシャルデータブロックを表示します。

Logging

LOGGING/NOLOGGING メトリクスは、ダイレクトパスの書き込みを制御して、REDOおよびUNDOの生成を削減します。これは、回復性およびパフォーマンスのバランス制御において有効な方法です。

前提条件

  • oracle-instantclient-basic-linux
  • oracle-instantclient-sdk-linux
  • cx_Oracle - Python Interface for Oracle Database
instantclient-basic-linux.x64-12.2.0.1.0.zip
instantclient-sdk-linux.x64-12.2.0.1.0.zip
pip install cx_Oracle
  1. 次のパッケージをインストールします:
    apt-get install python-dev build-essential libaio1
  2. Oracle website からLinux x86-64のクライアントをダウンロードします
  3. ダウンロードしたzipファイルを解凍し、フォルダーに展開します。例
    mkdir -p /opt/oracle_client
  4. 環境変数を追加します:
    • /etc/profile.d/oracle.sh にファイルを作成し次の行を追加します:
      export ORACLE_HOME=/opt/oracle_client/instantclient_12_2
      export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME
    • /etc/ld.so.conf.d/oracle.conf にファイルを作成し、次の行を追加します
      /opt/oracle_client/instantclient_12_2
    • コマンドを実行します
      sudo ldconfig
    メモ: サーバーからログアウトし、変更が反映されるよう再ログインしていることを確認します
  5. symlinkを作成します
    cd $ORACLE_HOME
    ln -s libclntsh.so.12.2 libclntsh.so
  6. 7. pipを使用してcx_Oracle pythonをインストールします

プラグインのインストール

  • o データベース全体を監視する場合は、 oracle.py" ファイルをダウンロードします。
    wget https://raw.githubusercontent.com/site24x7/plugins/master/oracle/oracle.py
  • o Oracle表領域を確認する場合は、 oracle_tablespace_details.py ファイルをダウンロードします。
    wget https://raw.githubusercontent.com/site24x7/plugins/master/oracle_tablespace_details/oracle_tablespace_details.py
  • 表領域の使用状況のみ監視する場合は、 oracle_tablespace_usage.py ファイルをダウンロードします。
    wget https://raw.githubusercontent.com/site24x7/plugins/master/oracle_tablespace_usage/oracle_tablespace_usage.py
  • oracleフォルダーでoracle.pyのプラグイン
  • oracle_tablespace_detailsフォルダーでoracle_tablespace_details.py
  • oracle_tablespace_usageフォルダーでoracle_tablespace_usage.py
  • プラグイン実行予定のサーバーに Site24x7 Linuxエージェント の最新バージョンをダウンロードおよびインストールします。 正常にインストールされると、Site24x7コントロールパネルにLinuxサーバーモニターが表示されます。これにより、エージェントがデータセンターと通信できるようになります。
  • から、プラグインファイルをダウンロードします。GitHubリポジトリー
  • 監視を有効にするには、プラグインスクリプトの設定セクションにある ORACLE_HOST, ORACLE_PORT, ORACLE_USERNAME, ORACLE_PASSWORD および ORACLE_SID の詳細を入力します。
    表領域の詳細および使用状況を監視するプラグインの場合は、監視する表領域名を TABLESPACE_NAMEに入力します。
  • Site24x7 Linuxエージェントのプラグインディレクトリー「/ opt / site24x7 / monagent / plugins /」に、ダウンロードしたプラグインに応じて個別にフォルダーを作成し、それぞれのプラグインファイルを 「/ opt / site24x7 / monagent / plugins /<plugin folder>/」に配置します。

エージェントは5分以内にプラグインを自動実行し、 Site24x7データセンターにパフォーマンスデータを送信します。

Site24x7 Webクライアントでデータを表示

  1. ログインしたら、> [サーバー][プラグイン] > [プラグイン監視名]へ進みます。
  2. サーバーのさまざまなメトリクスに関するパフォーマンスグラフを表示できます。

エラー処理

S.Noエラーメッセージ解決策
1cx_Oracle module is not installed必須条件のセクションを確認した上で、Pythonモジュールをインストールします。
2Exception while connecting to host入力した設定情報(ホスト名、ポート、SID、ユーザー名、パスワード)が有効であることを確認します。
3Please check the Tablespace Name in the configuration sectionプラグインスクリプトの設定セクションに指定された表領域名が有効であることを確認します。

プラグインに貢献

コミュニティーに関する提案やフィードバックをご自由にお寄せください。貴重な意見を既存のプラグイン発展に繋げていきます。

関連記事

  • Out-of-the-boxプラグイン - 豊富な連携リストでアプリケーション全体を監視します。
  • サーバー監視 - サーバーの停止やパフォーマンスの問題を完全に把握します。
  • NGINX および NGINX Plus - NGINX内に限らず、Webインフラストラクチャー内で発生する問題もいち早く把握します。
  • MySQL - MySQLデータベースのパフォーマンスメトリクスを監視します。
  • Postgres - 業務上重要なPostgresデータベースサーバの可用性とパフォーマンスをプロアクティブに監視します。
  • Nagios - Site24x7では、Nagiosサーバーを実行する必要なしに、何千ものNagiosプラグインを実行することができます
  • カスタムスクリプトの監視- カスタム Linux および Windows プラグインを作成し、必要な属性を監視します。
  • GitHubリポジトリー - 50以上のプラグイン連携を備えています。