この記事を読むメリット
- SAPシステムの不具合調査で使える主要なトランザクションコードを知ることができます。
- エラーの種類別に効率的な調査手順を習得できます。
- システム監視の基本的なアプローチを身につけることができます。
博士!システムで不具合が起きた時に、どこから調査すれば良いかわからなくて困ってます…
うむ、不具合調査は確かに慣れないと難しいものじゃ。まずは基本的なトランザクションコードから覚えていこう!
SAPシステムで不具合が発生した際、適切な調査手順を踏むことで効率的に問題を特定できます。
本記事では、システム不具合調査で役立つ主要なトランザクションコードを体系的に解説します!
この記事のポイント
エラー・ダンプ分析の基本
ST22 – ABAP実行時エラー(ショートダンプ)
不具合調査で最初に確認すべきは「ST22」じゃ!
これはABAPプログラムの実行時エラーを確認するトランザクションコードじゃ。
主な用途
- バックグラウンドジョブの異常終了原因調査
- プログラム実行中の例外処理確認
- メモリ不足やタイムアウト等のシステムエラー分析
調査のポイント
- エラー発生時間とユーザーを確認
- エラーメッセージから根本原因を特定
- どのプログラムのどの行でエラーが発生したかを把握
あわせて読みたい
【SAP不具合調査】ショートダンプの調査方法(ST22)について解説!
この記事を読むメリット SAPにおけるT-CODE:ST22(ABAP実行時エラー)についての基本を理解することができます。 SAPでは、ABAPプログラムが異常終了したときにショー…
SM21 – システムログ
システム全体のエラーログとイベントを時系列で確認できる重要なトランザクションです。
ST22で具体的なダンプが見つからない場合はどうすれば良いでしょうか?
その場合は「SM21」でシステム全体のログを確認するのじゃ。
セッションエラーや通信エラーなど、ダンプが出ない問題も捉えられるぞい!
主な用途
- 通信エラー、セッションエラーの追跡
- システム起動/停止時の問題調査
- 時間・クライアント・ユーザ別のエラー履歴確認
システム監視・パフォーマンス分析
ST02 – SAPメモリ管理
SAPシステムのメモリ使用状況を監視する際に使用します。
主な用途
- バッファのヒット率確認
- メモリ不足の原因調査
- ロールエリア、ページングエリアの使用率確認
確認すべき指標
- CurUse(使用中)がMax. Use(Max使用)に近づいている場合はメモリ使用量の監視が必要
- Swaps(スワップ)※バッファの置換 が多発している場合は要注意
ST03/ST03N – ワークロード分析
システムの負荷とパフォーマンス統計を分析できます。
主な用途
- 使用頻度の高いトランザクション特定
- レスポンス時間の分析
- ユーザ別・期間別の負荷確認
- データベースアクセス統計
ST04 – データベースパフォーマンス
データベースレベルのパフォーマンス問題を調査します。
主な用途
- DBの読み書き状況確認
- ビジー状態時の待ち時間分析
- アクセス頻度の高いテーブル特定
ST06 – OS監視
オペレーティングシステムレベルの監視を行います。
主な用途
- CPU使用率の確認
- メモリ使用状況の監視
- ディスク容量とI/O状況の確認
- ネットワーク統計の分析
確認すべき指標
- CPU使用率が継続的に高い場合は要注意
- 物理メモリの使用状況とスワップ発生の確認
- ディスク容量不足の早期発見
パフォーマンス系のトランザクションがたくさんあって覚えきれません…
ST02~ST06は段階的に覚えると良いぞい!
ST02でSAPメモリ、ST03でワークロード、ST04でDB、ST06でOSと、それぞれ監視レイヤーが異なるのじゃ。
プロセス・セッション管理
SM50/SM66 – プロセス監視
実行中のワークプロセスを監視し、問題の発生箇所を特定します。
主な用途
- ハングしたプロセスの特定
- 長時間実行プロセスの調査
- プロセス強制終了
活用方法
- プロセスをダブルクリックして詳細な実行状況を確認
- 必要に応じてプロセスの中断も可能
SM04 – ログインユーザー一覧
システムにログインしているユーザーの状況を確認します。
主な用途
- 現在ログイン中のユーザー一覧表示
- セッション管理と監視
- 同時ログイン数の確認
- ユーザセッションの強制切断
確認すべきポイント
- 異常に多くのセッションを持つユーザーの特定
- 長時間アクティブでないセッションの確認
- システム負荷の原因となるセッションの調査
SM12 – ロックエントリ管理
システム内のロック状況を確認し、データの競合問題を調査します。
主な用途
- データのロック競合調査
- 長時間ロック(24時間以上)の特定と解除
- デッドロックの調査
あわせて読みたい
【SAP不具合調査】SM12を使用したロックエントリの確認方法
この記事を読むメリット ロックに関する知識が体系的に習得できます SM12を使ったロックエントリ状況の確認方法が理解できます T-CODE:SM12は、SAPの“テーブルロック(…
SM37 – バッチジョブ監視
バックグラウンドジョブの実行状況を確認する際に使用します。
主な用途
- ジョブの実行結果確認
- エラージョブの原因調査
- ジョブログの詳細分析
あわせて読みたい
【SAP基礎】JOBログの確認方法(T-CODE:SM37)
この記事を読むメリット SAPジョブの基礎知識を理解することができます。 今回は、SAP運用で避けては通れないSAPジョブの解説とJOBログの確認方法について解説していき…
RFC・インターフェース関連
SM58 – RFC関連のエラー
RFC(Remote Function Call)のエラーを確認します。
主な用途
- 外部システムとの通信エラー調査
- IDocの処理状況確認
- 接続情報の問題特定
T-CODE:WE02にてIDocの状況は緑になっているのに、相手先にデータが届かない場合は「SM58」を確認するのじゃ!
SM59 – RFC接続設定
RFC接続の設定と接続テストを行います。
主な用途
- 接続先システムとの通信確認
- 接続パラメータの検証
- 認証情報の確認
トレース・詳細分析
ST05 – SQLトレース
データベースアクセスの詳細分析を行います。
主な用途
- SQL文の実行時間測定
- データベースアクセスの最適化
- パフォーマンスボトルネック特定
ST12 – 統合パフォーマンストレース
ABAP、SQL、RFCの統合トレースを実行します。
主な用途
- 包括的なパフォーマンス分析
- プログラムの最適化ポイント特定
- エンドツーエンドの処理時間分析
統合監視・その他
RZ20 – CCMS監視
システム全体の統合監視を行います。
主な用途
- アラート状況の一元管理
- システムステータスの可視化
- 閾値監視とアラート設定
SLG1 – アプリケーションログ分析
アプリケーション固有のログメッセージを確認します。
主な用途
- HTTP通信エラー
- ワークフローの実行状況
- 支払媒体出力時のエラー
- CIF転送時の問題
- IDOCインターフェースエラー
あわせて読みたい
【SAP不具合調査】SLG1を使用したアプリケーションログの確認方法
この記事を読むメリット SLG1を使ったアプリケーションログ(Application Log)の概要と確認方法が理解できます T-CODE : SLG1は、アプリケーションが出力した技術・業務…
調査順序の例
たくさんのトランザクションコードがありますね!実際の調査ではどんな順序で確認すれば良いでしょうか?
良い質問じゃ!
事象によりアプローチは全く異なるのじゃが、だいたいこの順序で調べれば良いかな?というイメージがあるので共有するぞい。
初期確認(5分以内)
- ST22: ダンプの有無確認
- SM37: バッチジョブエラー確認
- SM21: システムログ確認
詳細分析(15-30分)
- ST02: メモリ状況確認
- SM50: プロセス状況確認
- SM12: ロック状況確認
深堀り調査(必要に応じて)
- ST05/ST12: パフォーマンストレース
- SLG1: アプリケーションログ詳細確認
- SM58: RFC関連エラー確認
- SE38やSE37等: プログラムのデバッグ調査
このように段階的に調査することで、効率的に問題を特定できるぞい!
まとめ
SAPシステムの不具合調査では、問題の性質に応じて適切なトランザクションコードを選択することが重要です。
必須なトランザクション
- ST22(ABAPダンプ)
- SM12(ロック管理)
- SM21(システムログ)
- SM37(バッチジョブ)
できれば使えるようになっておきたいトランザクション
- ST02(メモリ監視)
- ST03/ST03N(ワークロード分析)
- ST04(DB監視)
- その他
この体系的なアプローチにより、SAPシステムで発生する不具合を効率的に特定し、解決することができます。
不具合調査の解説は以上じゃ!
SAPの技術的な内容について、他にも役立つ記事があるので確認してみると良いぞ!
あわせて読みたい
SAP小ワザまとめ
ここではSAPで使える小技をまとめていくのじゃ! 【文字列検索】 【テーブル検索】 【カスタマイズ】 【障害調査】 【その他】 SAPの小ワザまとめは以上じゃ!