プロセスとメモリ管理のコマンド: Cisco ASR 9000 シリーズ ルータ
プロセスとメモリ管理のコマンド: Cisco ASR 9000 シリーズ ルータ
発行日;2013/03/04   |   ドキュメントご利用ガイド   |   ダウンロード ;   この章 pdf   ,   ドキュメント全体 pdf    |   フィードバック

プロセスとメモリ管理のコマンド: Cisco ASR 9000 シリーズ ルータ

この章では、プロセスとメモリの管理に使用される Cisco IOS XR ソフトウェアのコマンドについて説明します。

プロセスとメモリの管理コマンドを使用して、トラブルシューティングに関するタスクを実行する方法の詳細については、 『Cisco ASR 9000 Series Aggregation Services Router Getting Started Guide』を参照してください。

clear context

コア ダンプのコンテキスト情報を削除するには、管理 EXEC モードまたは EXEC モードで clear context コマンドを使用します。

clear context location { node-id | all }

Syntax Description

location{node-id | all}

(任意)指定されたノードのコア ダンプのコンテキスト情報を削除します。 node-id 引数は、ラック/スロット/モジュール の形式で表されます。 すべてのノードを指定するには all キーワードを使用します。

Command Default

デフォルトの動作または値はありません。

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

clear context コマンドを使用して、コア ダンプのコンテキスト情報を削除します。 location node-id キーワードおよび引数を使用してノードを指定していない場合、このコマンドは、すべてのノードのコア ダンプのコンテキスト情報を削除します。

コア ダンプのコンテキスト情報を表示するには、show context コマンドを使用します。

Task ID

タスク ID

操作

diag

実行

Examples

次に、コア ダンプのコンテキスト情報を削除する例を示します。

RP/0/RSP0/CPU0:router# clear context
         

Related Commands

コマンド

説明

show context

コア ダンプのコンテキスト情報を表示します。

dumpcore

コア ダンプを手動で生成するには、管理 EXEC モードまたは EXEC モードで dumpcore コマンドを使用します。

dumpcore { running | suspended } job-id location node-id

Syntax Description

running

実行されているプロセスのコア ダンプを生成します。

suspended

プロセスを中断してそのプロセスのコア ダンプを生成し、プロセスを再開します。

job-id

プロセス インスタンスの ID。

location node-id

指定されたノードで実行されているプロセスのコア ダンプを生成します。 node-id 引数は、ラック/スロット/モジュール の形式で表されます。

Command Default

デフォルトの動作または値はありません。

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

Cisco IOS XR ソフトウェアでプロセスがクラッシュすると、ルータが停止することなく、イベントのコア ダンプ ファイルが指定された宛先に書き込まれます。 プロセスが異常終了したという通知を受信すると、Cisco IOS XR ソフトウェアがクラッシュしたプロセスを復元します。 コア ダンプ ファイルは、Cisco Technical Support Center のエンジニアや開発エンジニアがCisco IOS XR ソフトウェアのデバッグに使用しています。

プロセスがクラッシュしてないときでも、プロセスのコア ダンプを手動で生成できます。 コアダンプを手動で生成するには、次の 2 つのモードを使用します。

  • running:実行されているプロセスのコア ダンプを生成します。 このモードを使用して、致命的なプロセス(プロセスの中断によってルータのパフォーマンスに悪影響が出る場合など)でコア ダンプを生成することができます。コア ダンプ ファイルは独立して生成されるため、コア ダンプ ファイルを生成しながらプロセスを継続して実行することができます。
  • suspended:プロセスを中断してそのプロセスのコア ダンプを生成し、プロセスを再開します。 プロセスが中断されるたびに、このモードではコア ダンプ ファイルのデータの一貫性が保証されます。

コア ダンプ ファイルには、クラッシュしたプロセスに関する次の情報が含まれています。

  • 登録情報
  • スレッド ステータス情報
  • プロセス ステータス情報
  • 選択されたメモリのセグメント

Task ID

タスク ID

操作

diag

読み取り、書き込み

Examples

次に、プロセス インスタンス 52 のコア ダンプを suspended モードで生成する例を示します。

RP/0/RSP0/CPU0:router# dumpcore suspended 52
  
RP/0/RP0/CPU0:Sep 22 01:40:26.982 : sysmgr[71]: process in stop/continue state 4104
RP/0/RP0/CPU0Sep 22 01:40:26.989 : dumper[54]: %DUMPER-4-CORE_INFO : Core for pid = 4104 
 (pkg/bin/devc-conaux) requested by pkg/bin/dumper_gen@node0_RP0_CPU0
RP/0/RP0/CPU0Sep 22 01:40:26.993 : dumper[54]: %DUMPER-6-SPARSE_CORE_DUMP : 
 Sparse core dump as configured dump sparse for all
RP/0/RP0/CPU0Sep 22 01:40:26.995 : dumper[54]: %DUMPER-7-DLL_INFO_HEAD : DLL path    
 Text addr.  Text size   Data addr.  Data size   Version
RP/0/RP0/CPU0Sep 22 01:40:26.996 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libplatform.dll  0xfc0d5000  0x0000a914  0xfc0e0000  0x00002000        0
RP/0/RP0/CPU0Sep 22 01:40:26.996 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libsysmgr.dll  0xfc0e2000  0x0000ab48  0xfc0c295c  0x00000368        0
RP/0/RP0/CPU0Sep 22 01:40:26.997 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libinfra.dll  0xfc0ed000  0x00032de0  0xfc120000  0x00000c90        0
RP/0/RP0/CPU0Sep 22 01:40:26.997 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libios.dll  0xfc121000  0x0002c4bc  0xfc14e000  0x00002000        0
RP/0/RP0/CPU0Sep 22 01:40:26.997 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libc.dll  0xfc150000  0x00077ae0  0xfc1c8000  0x00002000        0
RP/0/RP0/CPU0Sep 22 01:40:26.998 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libsyslog.dll  0xfc1d2000  0x0000530c  0xfc120c90  0x00000308        0
RP/0/RP0/CPU0Sep 22 01:40:26.998 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libbackplane.dll  0xfc1d8000  0x0000134c  0xfc0c2e4c  0x000000a8        0
RP/0/RP0/CPU0Sep 22 01:40:26.999 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libnodeid.dll  0xfc1e5000  0x00009114  0xfc1e41a8  0x00000208        0
RP/0/RP0/CPU0Sep 22 01:40:26.999 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libttyserver.dll  0xfc1f1000  0x0003dfcc  0xfc22f000  0x00002000        0
RP/0/RP0/CPU0Sep 22 01:40:27.000 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libttytrace.dll  0xfc236000  0x00004024  0xfc1e44b8  0x000001c8        0
RP/0/RP0/CPU0Sep 22 01:40:27.000 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libdebug.dll  0xfc23b000  0x0000ef64  0xfc1e4680  0x00000550        0
RP/0/RP0/CPU0Sep 22 01:40:27.001 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/lib_procfs_util.dll  0xfc24a000  0x00004e2c  0xfc1e4bd0  0x000002a8        0
RP/0/RP0/CPU0Sep 22 01:40:27.001 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libsysdb.dll  0xfc24f000  0x000452e0  0xfc295000  0x00000758        0
RP/0/RP0/CPU0Sep 22 01:40:27.001 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libsysdbutils.dll  0xfc296000  0x0000ae08  0xfc295758  0x000003ec        0
RP/0/RP0/CPU0Sep 22 01:40:27.002 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/lib_tty_svr_error.dll  0xfc2a1000  0x0000172c  0xfc1e4e78  0x00000088        0
RP/0/RP0/CPU0Sep 22 01:40:27.002 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/lib_tty_error.dll  0xfc2a3000  0x00001610  0xfc1e4f00  0x00000088        0
RP/0/RP0/CPU0Sep 22 01:40:27.003 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libwd_evm.dll  0xfc2a5000  0x0000481c  0xfc295b44  0x00000188        0
RP/0/RP0/CPU0Sep 22 01:40:27.003 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libttydb.dll  0xfc2aa000  0x000051dc  0xfc295ccc  0x00000188        0
RP/0/RP0/CPU0Sep 22 01:40:27.004 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libttydb_error.dll  0xfc23a024  0x00000f0c  0xfc295e54  0x00000088        0
RP/0/RP0/CPU0Sep 22 01:40:27.004 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/librs232.dll  0xfc2b0000  0x00009c28  0xfc2ba000  0x00000470        0
RP/0/RP0/CPU0Sep 22 01:40:27.005 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/lib_rs232_error.dll  0xfc2bb000  0x00000f8c  0xfc295edc  0x00000088        0
RP/0/RP0/CPU0Sep 22 01:40:27.005 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libst16550.dll  0xfc2bc000  0x00008ed4  0xfc2ba470  0x00000430        0
RP/0/RP0/CPU0Sep 22 01:40:27.006 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libconaux.dll  0xfc2c5000  0x00001dc0  0xfc2ba8a0  0x000001a8        0
RP/0/RP0/CPU0Sep 22 01:40:27.006 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/lib_conaux_error.dll  0xfc1ee114  0x00000e78  0xfc295f64  0x00000088        0
RP/0/RP0/CPU0Sep 22 01:40:27.007 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libttyutil.dll  0xfc2c7000  0x00003078  0xfc2baa48  0x00000168        0
RP/0/RP0/CPU0Sep 22 01:40:27.007 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libbag.dll  0xfc431000  0x0000ee98  0xfc40cc94  0x00000368        0
RP/0/RP0/CPU0Sep 22 01:40:27.008 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libchkpt.dll  0xfc474000  0x0002ecf8  0xfc4a3000  0x00000950        0
RP/0/RP0/CPU0Sep 22 01:40:27.008 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libsysdbbackend.dll  0xfc8ed000  0x0000997c  0xfc8d3aa8  0x0000028c        0
RP/0/RP0/CPU0Sep 22 01:40:27.008 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libttymgmtconnection.dll  0xfce85000  0x00004208  0xfce8a000  0x00000468        0
RP/0/RP0/CPU0Sep 22 01:40:27.009 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libttymgmt.dll  0xfcea4000  0x0000e944  0xfce8abf0  0x000003c8        0
RP/0/RP0/CPU0Sep 22 01:40:27.009 : dumper[54]: %DUMPER-7-DLL_INFO : 
 /pkg/lib/libttynmspc.dll  0xfcec7000  0x00004a70  0xfcec6644  0x000002c8        0
RP/0/RP0/CPU0Sep 22 01:40:28.396 : dumper[54]: %DUMPER-5-CORE_FILE_NAME : 
 Core for process pkg/bin/devc-conaux at harddisk:/coredump/devc-conaux.by.
 dumper_gen.sparse.20040922-014027.node0_RP0_CPU0.ppc.Z
RP/0/RP0/CPU0Sep 22 01:40:32.309 : dumper[54]: %DUMPER-5-DUMP_SUCCESS : Core dump success
    

exception filepath

コア ダンプの設定を修正するには、管理コンフィギュレーション モードまたはグローバル コンフィギュレーション モードで exception filepath コマンドを使用します。 設定を削除するには、このコマンドの no 形式を使用します。

exception [ choice preference ] [ compress { on | off } ] filename filename lower-limit-higher-limit filepath filepath

no exception [ choice preference ] [ compress { on | off } ] filename filename lower-limit-higher-limit filepath filepath

Syntax Description

choice preference

(任意)コア ダンプ ファイルの宛先のプリファレンスの順番を設定します。 最大 3 つの宛先を定義できます。 有効な値は 1 ~ 3 です。

compress {on | off}

(任意)コア ダンプ ファイルを圧縮して送信するかどうかを指定します。 デフォルトでは、コア ダンプ ファイルは圧縮して送信されます。 compress キーワードを指定する場合、次のキーワードのいずれか 1 つを指定する必要があります。

  • on:コア ダンプ ファイルを送信前に圧縮します。
  • off:コア ダンプ ファイルを送信前に圧縮しません。
filename filename lower-limit-higher-limit

(任意)コア ダンプ ファイルに付加するファイル名と、循環バッファでリサイクルされる前に指定の宛先に送信されるコア ダンプ ファイルの制限範囲の上限と下限を指定します。

デフォルトのコア ダンプ ファイルの命名規則については、表 1を参照してください。

lower-limit 引数の有効値は 0 ~ 4 です。 higher-limit 引数の有効値は 5 ~ 64 です。 ハイフン(-)は lower-limit 引数のすぐ後に続けます。

(注)     

各コア ダンプ ファイルを一意に識別するために、lower-limit 引数に設定した制限範囲の下限値が各コア ダンプ ファイルに付加されます。これは、higher-limit 引数に設定した制限範囲の上限値に達するまで継続されます。 制限範囲の上限値に達すると、Cisco IOS XR ソフトウェアが、コア ダンプ ファイルに付加された値のリサイクルを下限値から開始します。

filepath

ディレクトリ パスがあとに続くローカル ファイル システムまたはネットワーク プロトコル。 すべてのローカル ファイル システムがサポートされています。 ネットワークプロトコル TFTP と FTP がサポートされています。

Command Default

choice preference キーワードおよび引数を使用してコア ダンプ ファイルの宛先にプリファレンスの順番を指定していない場合、デフォルトのプリファレンスは 1 番目の場所(つまり、1)になります。

コア ダンプ ファイルは圧縮して送信されます。

コア ダンプ ファイルに使用するデフォルトのファイル命名規則については、表 1で説明します。

Command Modes

管理コンフィギュレーション

グローバル コンフィギュレーション

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

コア ダンプ ファイルを保存する宛先ファイル パス、ファイル圧縮、およびコア ダンプに付加されたファイル名などのコア ダンプ ファイルの設定を修正するには、exception filepath コマンドを使用します。

コア ダンプ ファイルの推奨宛先として、ユーザ定義の場所を 3 つまで設定できます。

  • 1 番目の場所:コア ダンプ ファイルの最優先の宛先。 preference 引数に choice キーワードと値 1(つまり、choice 1)を入力し、宛先をコア ダンプ ファイルの 1 番目の場所として指定します。
  • 2 番目の場所:1 番目の場所が利用できない場合に、コア ダンプ ファイルの 2 番目の宛先となるフォールバックの選択肢(たとえば、1 番目の場所として設定されているハードディスクに障害が発生した場合など)。 preference 引数に choice キーワードと値 2(つまり、choice 2)を入力し、宛先をコア ダンプ ファイルの 2 番目の場所として指定します。
  • 3 番目の場所:1 番目と 2 番目の場所が利用できない場合に、コア ダンプ ファイルの 3 番目の宛先となるフォールバックの選択肢。 preference 引数に choice キーワードと値 3(つまり、choice 3)を入力し、宛先をコア ダンプ ファイルの 3 番目の場所として指定します。

コア ダンプ ファイルの宛先を指定するとき、ローカル ファイル システムまたはネットワーク サーバで、絶対ファイル パスを指定することができます。 ネットワークプロトコル TFTP と FTP がサポートされています。


(注)  


ハードディスク上の場所を最優先の場所として指定することを推奨します。


設定可能な 3 つの推奨宛先のみでなく、Cisco IOS XR ソフトウェアは、ユーザ定義の場所が利用できない場合に、コア ダンプ ファイルのフォールバックの宛先をデフォルトで 3 つ提供しています。

デフォルトのフォール バックの宛先は次のとおりです。

  • harddisk:/dumper
  • disk1:/dumper
  • disk0:/dumper

(注)  


デフォルトの宛先がブート デバイスの場合、コア ダンプ ファイルはその宛先に送信されません。


デフォルトのフォールバック パスが利用できない場合の予防策として、コア ダンプ ファイルの推奨宛先を少なくとも 1 つ設定することを推奨します。 デフォルトのフォールバックの宛先は、クラッシュしたプロセスの最初と最後のコア ダンプ ファイルだけを保存するため、推奨宛先を少なくとも 1 つ設定すると、コア ダンプ ファイルを確実にアーカイブできます。


(注)  


Cisco IOS XR ソフトウェア では、コア ダンプ ファイルのサイズによってメモリ不足が発生すると、ローカル ストレージ ファイルにそのコア ダンプ ファイルは保存されません。


デフォルトでは、Cisco IOS XR ソフトウェアは次の形式に従ってコア ダンプ ファイルにファイル名を割り当てます。

process [.by. requester |.abort][.sparse]. date-time . node . processor-type [.Z]

例:

 packet.by.dumper_gen.20040921-024800.node0_RP0_CPU0.ppc.Z 
  

表 1 に、デフォルトのコア ダンプ ファイルの命名規則を示します。

表 1  デフォルトのコア ダンプ ファイルの命名規則の説明

フィールド

説明

process

コア ダンプを生成したプロセスの名前。

.by. requester | .abort

コア ダンプがプロセスからの要求(requester)によって生成された場合、コア ファイル名には「.by.requester」というストリングが含まれ、この requester 変数は、コア ダンプを要求したプロセスの名前またはプロセス ID(PID)となります。 コア ダンプが自己生成された中断コール要求によるものである場合、コア ファイル名には、requester の名前の代わりに「.abort」というストリングが含まれます。

.sparse

完全なコア ダンプの代わりにスパースなコア ダンプが生成された場合、コア ダンプのファイル名には「.sparse」が表示されます。

.date-time

ダンパー プロセスがプロセス マネージャに呼び出されてコア ダンプを生成する日時。 .date-time タイム スタンプ変数は、yyyy.mm.dd-hh.mm.ss 形式で表されます。 タイム スタンプをファイル名に含めると、コア ダンプ ファイル名を一意に識別できます。

. node

コア ダンプを生成したプロセスが実行されていたノード ID で、ラック/スロット/モジュール の形式で表されます。

.processor-type

プロセッサのタイプ(mips または ppc)。

.Z

コア ダンプが圧縮されて送信された場合、ファイル名には .Z 拡張子が含まれます。

オプションの filename filename キーワードおよび引数でコア ダンプ ファイルにファイル名が付加されるように指定することにより、また、制限範囲の下限と上限の値が、それぞれ lower-limit 引数と higher-limit 引数でコア ダンプ ファイル名に付加されるように指定することにより、デフォルトの命名規則を修正することができます。 filename 引数に指定するファイル名はコア ダンプ ファイルに付加され、ファイル名の前に指定の宛先に送信されるコア ダンプ ファイルの制限範囲の下限値と上限値がリサイクルされます。 lower-limit 引数の有効値は 0 ~ 4 です。 higher-limit 引数の有効値は 5 ~ 64 です。 ハイフン(-)は lower-limit 引数のすぐ後に続けます。 さらに、各コア ダンプ ファイルを一意に識別するために、lower-limit 引数で指定した制限範囲の下限値が各コア ダンプ ファイルに付加されます。これは、higher-limit 引数で指定した制限範囲の上限値に達するまで継続されます。 設定された制限範囲の上限値に達すると、Cisco IOS XR ソフトウェアが、コア ダンプ ファイルに付加された値のリサイクルを下限値から開始します。

Task ID

タスク ID

操作

diag

読み取り、書き込み

Examples

次に、コア ダンプ設定で、ユーザ定義による 1 番目の推奨場所を設定する例を示します。 この例では、コア ダンプ ファイルは圧縮しないで送信されるように設定されます。コア ダンプ ファイルのファイル名は「core」に設定されます(つまり、すべてのコア ファイル名は core と命名されます)。値の範囲は 0 ~ 5 に設定されます(つまり、0 ~ 5 の値が、リサイクルされる前に、コア ダンプ ファイルを生成した最初の 5 つのファイル名にそれぞれ付加されます)。宛先はハードディスク上のディレクトリに設定されます。

RP/0/RP0/CPU0:router(config)# exception choice 1 compress off
  filename core 0-5 filepath /harddisk:/corefile
         

Related Commands

コマンド

説明

exception pakmem

コア ダンプでパケット メモリ情報を収集します。

exception sparse

スパースなコア ダンプをイネーブルまたはディセーブルにします。

exception sprsize

コア ダンプ ファイルの最大サイズを設定します。

show exception

設定済みのコア ダンプ設定を表示します。

exception pakmem

コア ダンプ ファイルでパケット メモリ情報の収集を設定するには、管理コンフィギュレーション モードまたはグローバル コンフィギュレーション モードで exception pakmem コマンドを使用します。 設定を削除するには、このコマンドの no 形式を使用します。

exception pakmem { on | off }

no exception pakmem { on | off }

Syntax Description

on

コア ダンプ ファイルでパケット メモリ情報の収集をイネーブルにします。

off

コア ダンプ ファイルでパケット メモリ情報の収集をディセーブルにします。

Command Default

パケット メモリ情報はコア ダンプ ファイルに含まれていません。

Command Modes

管理コンフィギュレーション

グローバル コンフィギュレーション

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

コア ダンプ ファイルでパケット メモリ情報の収集を設定するには、on キーワードを指定して exception pakmem コマンドを使用します。 Cisco Technical Support Center のエンジニアや開発エンジニアは、パケット メモリ情報を使用して、プロセスに関するパケット メモリの問題をデバッグしています。


注意    


コア ダンプ ファイルにパケット メモリ情報を含めると、コア ダンプ ファイルで生成されるデータ量が増加し、プロセスの再開に遅延が発生する場合があります。


Task ID

タスク ID

操作

diag

読み取り、書き込み

Examples

次に、コア ダンプにパケット メモリ情報を含める設定の例を示します。

RP/0/RSP0/CPU0:router(config)# exception pakmem on
         

Related Commands

コマンド

説明

exception filepath

コア ダンプ設定を修正します。

exception sparse

スパースなコア ダンプをイネーブルまたはディセーブルにします。

exception sprsize

コア ダンプ ファイルの最大サイズを設定します。

show exception

設定済みのコア ダンプ設定を表示します。

exception sparse

スパースなコア ダンプをイネーブルまたはディセーブルにするには、管理コンフィギュレーション モードまたはグローバル コンフィギュレーション モードで exception sparse コマンドを使用します。 設定を削除するには、このコマンドの no 形式を使用します。

exception sparse { on | off }

no exception sparse

Syntax Description

on

スパースなコア ダンプをイネーブルにします。

off

スパースなコア ダンプをディセーブルにします。

Command Default

スパースなコア ダンプはディセーブルです。

Command Modes

管理コンフィギュレーション

グローバル コンフィギュレーション

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

コア ダンプ ファイルで生成されるデータ量を減らすには、exception sparse コマンドを使用します。 コア ファイルでは(コア ファイルで失われた情報を犠牲にして)参照データのみが生成されるため、スパースなコア ダンプはこのようにしてコア ダンプ ファイルの生成に必要な時間を節約します。 コア ダンプ ファイルの生成に必要な時間が節約されると、プロセスの再開がより迅速化されます。

スパースなコア ダンプには、クラッシュしたプロセスに関する次の情報が含まれています。

  • すべてのスレッドの登録情報と、これらの登録値が参照するすべてのメモリ ページ。
  • すべてのスレッドのスタック情報と、これらのスレッドが参照するすべてのメモリ ページ。
  • 最後のプログラム カウンタが Dynamic Loadable Library(DLL)データのセクションに分類される場合、ロードされた DLL データのセクションで参照されるすべてのメモリ ページ。
  • lib_dumper_marker DLL からのユーザ指定のすべてのマーカ ページ。

exception sparse コマンドは次の基準に従い、事前に一覧表示されたダンプ情報にあるトリガー アドレスに基づいてメモリ ページをダンプします。

  • メモリ ページのトリガー アドレスが、そのメモリ ページの最初の 128 バイトにある場合、連続するアドレス リージョン内のそれ以前のメモリ ページも同様にダンプされます。
  • メモリ ページのトリガー アドレスが、そのメモリ ページの最後の128 バイトにある場合、連続するアドレス リージョン内のそれ以降のメモリ ページも同様にダンプされます。
  • その他すべてのインスタンスでは、トリガー アドレスを含むメモリ ページだけがダンプします。

(注)  


RP の一時的なプロセスの完全なコア ダンプを取得するには、管理コンフィギュレーション モードで exception sparse off コマンドを使用します。


Task ID

タスク ID

操作

diag

読み取り、書き込み

Examples

次に、スパースなコア ダンプをイネーブルにする例を示します。

RP/0/RSP0/CPU0:router(config)# exception sparse on
         

Related Commands

コマンド

説明

exception filepath

コア ダンプ設定を修正します。

exception pakmem

コア ダンプでパケット メモリ情報を収集します。

exception sprsize

コア ダンプ ファイルの最大ファイル サイズを設定します。

show exception

設定済みのコア ダンプ設定を表示します。

exception sprsize

コア ダンプの最大ファイル サイズを指定するには、管理コンフィギュレーション モードまたはグローバル コンフィギュレーション モードで exception sprsize コマンドを使用します。 設定を削除するには、このコマンドの no 形式を使用します。

exception sprsize megabytes

no exception sprsize

Syntax Description

megabytes

メガバイト(MB)のサイズ。

Command Default

megabytes:192

Command Modes

管理コンフィギュレーション

グローバル コンフィギュレーション

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

コア ダンプの最大ファイル サイズを指定するには、exception sprsize コマンドを使用します。 megabytes 引数に設定された最大ファイル サイズは、exception sparseコマンドに設定された設定で使用され、スパースなコア ダンプ ファイルを生成するかどうかを決定します。 スパースなコア ダンプ ファイルがディセーブルの場合、コア ダンプ ファイルが圧縮されない状態でデフォルト値(192 MB)または megabytes 引数に指定された値を超過することが予測されると、スパースなコア ダンプ ファイルが生成されます。 スパースなコア ダンプ ファイルがイネーブルの場合、コア ダンプ ファイルのサイズにかかわらず、スパースなコア ダンプ ファイルが生成されます。

Task ID

タスク ID

操作

diag

読み取り、書き込み

Examples

次に、スパースなコア ダンプのファイル サイズを 300 MB に設定する例を示します。

RP/0/RSP0/CPU0:router(config)# exception sprsize 300
         

Related Commands

コマンド

説明

exception sparse

スパースなコア ダンプをイネーブルまたはディセーブルにします。

follow

プロセスのライブ プロセスまたはライブ スレッドを暗黙的にデバッグするには、EXEC モードで follow コマンドを使用します。

follow { job job-id | process pid | location node-id } [all] [blocked] [ debug level ] [ delay seconds ] [ dump address size ] [ iteration count ] [ priority level ] [stackonly] [ thread tid ] [verbose]

Syntax Description

job job-id

プロセスをジョブ ID で追跡します。

process pid

pid 引数に指定されたProcess ID(PID; プロセス ID)でプロセスを追跡します。

location node-id

指定したノードでターゲットのプロセスを追跡します。 node-id 引数は、ラック/スロット/モジュール の形式で表されます。

all

(任意)すべてのスレッドを追跡します。

blocked

(任意)ターゲットのプロセスをブロックしているスレッド ID(TID)または PID のチェーンを追跡します。

debug level

(任意)次の動作のデバッグ レベルを設定します。 level 引数の有効値は 0 ~ 10 です。

delay seconds

(任意)各反復間の遅延インターバルを設定します。 seconds 引数の有効値は 0 ~ 255 秒です。

dump address size

(任意)address 引数と size 引数に指定されたメモリ アドレスとサイズで開始されるメモリ セグメントをダンプします。

iteration count

(任意)情報を表示する回数を指定します。 count 引数の有効値は 0 ~ 255 反復です。

priority level

(任意)次の動作のプライオリティ レベルを設定します。 level 引数の有効値は 1 ~ 63 です。

stackonly

(任意)スタック トレース情報だけを表示します。

thread tid

(任意)プロセスの TID または tid 引数に指定されたジョブ ID を追跡します。

verbose

(任意)ターゲットのプロセスに関する登録情報とステータス情報を表示します。

Command Default

オプションのキーワードまたは引数を指定せずに follow コマンドを入力すると、ローカル ノードから 5 回の反復で動作が実行され、各反復の間には 5 秒の遅延が発生します。 出力には、すべてのライブ スレッドの情報が含まれています。 このコマンドは、コマンドが実行されているデフォルトのスケジューリング プライオリティを使用します。

Command Modes

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

このコマンドを使用して、プロセスのライブ プロセスまたはライブ スレッドを暗黙的にデバッグします。 このコマンドは、デッドロック状態とライブロック状態をデバッグする場合、プロセスのメモリの場所または変数の内容を検査して破損問題の原因を判断する場合、およびスレッドがスタックされてループ内で回転している問題を調査する場合に特に役立ちます。 ライブロック状態は、2 つ以上のプロセスが他のプロセスの変更に応じて継続的にステートを変更するときに発生します。

次のアクションはこのコマンドを使用して指定できます。

  • 指定されたプロセス、またはプロセスの指定されたスレッドのすべてのライブ スレッドを追跡し、コア ダンプ出力に類似した形式でスタック トレースを印刷します。
  • ループ内のプロセスを指定の反復回数で追跡します。
  • コマンド呼び出し中に 2 つの反復間の遅延を設定します。
  • このコマンドが実行されている間に、このプロセスが実行されるプライオリティを設定します。
  • 指定された仮想メモリの場所から指定のサイズのメモリをダンプします。
  • ターゲット プロセスの登録値とステータス情報を表示します。

スレッドの実行パスのスナップショットを非同期的にとり、反復回数を遅延なしで多く設定することにより、パフォーマンスに関連する問題を調査します。

Task ID

タスク ID

操作

basic-services

読み取り

Examples

次に、follow コマンドを使用して、ジョブ ID 257 に関連付けられているプロセスを 1 回の反復でデバッグする例を示します。

RP/0/RSP0/CPU0:router# follow job 257 iteration 1
  
Attaching to process pid = 28703 (pkg/bin/packet)
No tid specified, following all threads
  
DLL Loaded by this process
-------------------------------
  
DLL path                 Text addr. Text size  Data addr. Data size  Version
/pkg/lib/libovl.dll      0xfc0c9000 0x0000c398 0xfc0c31f0 0x0000076c        0
/pkg/lib/libplatform.dll 0xfc0d6000 0x0000aa88 0xfc0e1000 0x00002000        0
/pkg/lib/libsysmgr.dll   0xfc0e3000 0x0000aeac 0xfc0c395c 0x00000388        0
/pkg/lib/libinfra.dll    0xfc0ee000 0x000332ec 0xfc122000 0x00000c70        0
/pkg/lib/libios.dll      0xfc123000 0x0002c4bc 0xfc150000 0x00002000        0
/pkg/lib/libc.dll        0xfc152000 0x00077ae0 0xfc1ca000 0x00002000        0
/pkg/lib/libsyslog.dll   0xfc1d4000 0x0000530c 0xfc122c70 0x00000308        0
/pkg/lib/libbackplane.dll 0xfc1da000 0x0000134c 0xfc0c3e6c 0x000000a8        0
/pkg/lib/libnodeid.dll   0xfc1e7000 0x000091fc 0xfc1e61a8 0x00000208        0
/pkg/lib/libdebug.dll    0xfc23e000 0x0000ef64 0xfc1e6680 0x00000550        0
/pkg/lib/lib_procfs_util.dll 0xfc24d000 0x00004e2c 0xfc1e6bd0 0x000002a8        0
/pkg/lib/libsysdb.dll    0xfc252000 0x00046224 0xfc299000 0x0000079c        0
/pkg/lib/libsysdbutils.dll 0xfc29a000 0x0000ae04 0xfc29979c 0x000003ec        0
/pkg/lib/libwd_evm.dll   0xfc2a9000 0x0000481c 0xfc299b88 0x00000188        0
/pkg/lib/lib_mutex_monitor.dll 0xfc35e000 0x00002414 0xfc340850 0x00000128        0
/pkg/lib/libchkpt.dll    0xfc477000 0x0002ee04 0xfc474388 0x00000950        0
/pkg/lib/libpacket_common.dll 0xfc617000 0x000130f0 0xfc6056a0 0x000007b0        0
  
Iteration 1 of 1
------------------------------
  
Current process = "pkg/bin/packet", PID = 28703 TID = 1
  
trace_back: #0 0xfc1106dc [MsgReceivev]
trace_back: #1 0xfc0fc840 [msg_receivev]
trace_back: #2 0xfc0fc64c [msg_receive]
trace_back: #3 0xfc0ffa70 [event_dispatch]
trace_back: #4 0xfc0ffc2c [event_block]
trace_back: #5 0x48204410 [<N/A>]
  
ENDOFSTACKTRACE
  
Current process = "pkg/bin/packet", PID = 28703 TID = 2
  
trace_back: #0 0xfc1106dc [MsgReceivev]
trace_back: #1 0xfc0fc840 [msg_receivev]
trace_back: #2 0xfc0fc64c [msg_receive]
trace_back: #3 0xfc0ffa70 [event_dispatch]
trace_back: #4 0xfc0ffc2c [event_block]
trace_back: #5 0xfc48d848 [chk_evm_thread]
  
ENDOFSTACKTRACE
  
Current process = "pkg/bin/packet", PID = 28703 TID = 3
  
trace_back: #0 0xfc17d54c [SignalWaitinfo]
trace_back: #1 0xfc161c64 [sigwaitinfo]
trace_back: #2 0xfc10302c [event_signal_thread]
  
ENDOFSTACKTRACE
  
Current process = "pkg/bin/packet", PID = 28703 TID = 4
  
trace_back: #0 0xfc1106c4 [MsgReceivePulse]
trace_back: #1 0xfc0fc604 [msg_receive_async]
trace_back: #2 0xfc0ffa70 [event_dispatch]
trace_back: #3 0xfc0ffc5c [event_block_async]
trace_back: #4 0xfc35e36c [receive_events]
  
ENDOFSTACKTRACE
  
Current process = "pkg/bin/packet", PID = 28703 TID = 5
  
trace_back: #0 0xfc17d564 [SignalWaitinfo_r]
trace_back: #1 0xfc161c28 [sigwait]
trace_back: #2 0x48203928 [<N/A>]
  
ENDOFSTACKTRACE
    

次に、follow コマンドを使用して、ジョブ ID 257 に関連付けられているプロセスの TID 5 を 1 回の反復でデバッグする例を示します。

RP/0/RSP0/CPU0:router# follow job 257 iteration 1 thread 5
  
Attaching to process pid = 28703 (pkg/bin/packet)
  
DLL Loaded by this process
-------------------------------
  
DLL path                 Text addr. Text size  Data addr. Data size  Version
/pkg/lib/libovl.dll      0xfc0c9000 0x0000c398 0xfc0c31f0 0x0000076c        0
/pkg/lib/libplatform.dll 0xfc0d6000 0x0000aa88 0xfc0e1000 0x00002000        0
/pkg/lib/libsysmgr.dll   0xfc0e3000 0x0000aeac 0xfc0c395c 0x00000388        0
/pkg/lib/libinfra.dll    0xfc0ee000 0x000332ec 0xfc122000 0x00000c70        0
/pkg/lib/libios.dll      0xfc123000 0x0002c4bc 0xfc150000 0x00002000        0
/pkg/lib/libc.dll        0xfc152000 0x00077ae0 0xfc1ca000 0x00002000        0
/pkg/lib/libsyslog.dll   0xfc1d4000 0x0000530c 0xfc122c70 0x00000308        0
/pkg/lib/libbackplane.dll 0xfc1da000 0x0000134c 0xfc0c3e6c 0x000000a8        0
/pkg/lib/libnodeid.dll   0xfc1e7000 0x000091fc 0xfc1e61a8 0x00000208        0
/pkg/lib/libdebug.dll    0xfc23e000 0x0000ef64 0xfc1e6680 0x00000550        0
/pkg/lib/lib_procfs_util.dll 0xfc24d000 0x00004e2c 0xfc1e6bd0 0x000002a8        0
/pkg/lib/libsysdb.dll    0xfc252000 0x00046224 0xfc299000 0x0000079c        0
/pkg/lib/libsysdbutils.dll 0xfc29a000 0x0000ae04 0xfc29979c 0x000003ec        0
/pkg/lib/libwd_evm.dll   0xfc2a9000 0x0000481c 0xfc299b88 0x00000188        0
/pkg/lib/lib_mutex_monitor.dll 0xfc35e000 0x00002414 0xfc340850 0x00000128        0
/pkg/lib/libchkpt.dll    0xfc477000 0x0002ee04 0xfc474388 0x00000950        0
/pkg/lib/libpacket_common.dll 0xfc617000 0x000130f0 0xfc6056a0 0x000007b0        0
  
Iteration 1 of 1
------------------------------
  
Current process = "pkg/bin/packet", PID = 28703 TID = 5
  
trace_back: #0 0xfc17d564 [SignalWaitinfo_r]
trace_back: #1 0xfc161c28 [sigwait]
trace_back: #2 0x48203928 [<N/A>]
  
ENDOFSTACKTRACE  
  

次に、follow コマンドを使用して、PID 139406 を割り当てられたプロセスに関連付けられているスレッド 2 について、このスレッド 2 をブロックしているスレッドのチェーンをデバッグする例を示します。

RP/0/RSP0/CPU0:router# follow process 139406 blocked iteration 1 thread 2
  
Attaching to process pid = 139406 (pkg/bin/lpts_fm)
  
DLL Loaded by this process
-------------------------------
  
DLL path                 Text addr. Text size  Data addr. Data size  Version
/pkg/lib/libplatform.dll 0xfc0d6000 0x0000aa88 0xfc0e1000 0x00002000        0
/pkg/lib/libsysmgr.dll   0xfc0e3000 0x0000aeac 0xfc0c395c 0x00000388        0
/pkg/lib/libinfra.dll    0xfc0ee000 0x000332ec 0xfc122000 0x00000c70        0
/pkg/lib/libios.dll      0xfc123000 0x0002c4bc 0xfc150000 0x00002000        0
/pkg/lib/libc.dll        0xfc152000 0x00077ae0 0xfc1ca000 0x00002000        0
/pkg/lib/libltrace.dll   0xfc1cc000 0x00007f5c 0xfc0c3ce4 0x00000188        0
/pkg/lib/libsyslog.dll   0xfc1d4000 0x0000530c 0xfc122c70 0x00000308        0
/pkg/lib/libbackplane.dll 0xfc1da000 0x0000134c 0xfc0c3e6c 0x000000a8        0
/pkg/lib/libnodeid.dll   0xfc1e7000 0x000091fc 0xfc1e61a8 0x00000208        0
/pkg/lib/libdebug.dll    0xfc23e000 0x0000ef64 0xfc1e6680 0x00000550        0
/pkg/lib/lib_procfs_util.dll 0xfc24d000 0x00004e2c 0xfc1e6bd0 0x000002a8        0
/pkg/lib/libsysdb.dll    0xfc252000 0x00046224 0xfc299000 0x0000079c        0
/pkg/lib/libsysdbutils.dll 0xfc29a000 0x0000ae04 0xfc29979c 0x000003ec        0
/pkg/lib/libwd_evm.dll   0xfc2a9000 0x0000481c 0xfc299b88 0x00000188        0
/pkg/lib/libbag.dll      0xfc40c000 0x0000ee98 0xfc41b000 0x00000368        0
/pkg/lib/libwd_notif.dll 0xfc4f8000 0x00005000 0xfc4fd000 0x00001000        0
/pkg/lib/libifmgr.dll    0xfc665000 0x00029780 0xfc68f000 0x00003000        0
/pkg/lib/libnetio_client.dll 0xfca6a000 0x000065c8 0xfca2c4f8 0x000001b4        0
/pkg/lib/libpa_client.dll 0xfcec5000 0x00006e9c 0xfcecc000 0x00003000        0
/pkg/lib/libltimes.dll   0xfcecf000 0x00002964 0xfcdc4f20 0x000000a8        0
  
Iteration 1 of 1
------------------------------
  
Current process = "pkg/bin/lpts_fm", PID = 139406 TID = 2
  
trace_back: #0 0xfc110744 [MsgSendv]
trace_back: #1 0xfc0fbf04 [msg_sendv]
trace_back: #2 0xfc0fbbd8 [msg_send]
trace_back: #3 0xfcec7580 [pa_fm_close]
trace_back: #4 0xfcec78b0 [pa_fm_process_0]
  
ENDOFSTACKTRACE
  
REPLY (node node0_RP1_CPU0, pid 57433)
  
No specific TID, following all threads of 57433 (pkg/bin/lpts_pa)
-----------------------------------------------------------------
  
DLL Loaded by this process
-------------------------------
  
DLL path                 Text addr. Text size  Data addr. Data size  Version
/pkg/lib/libplatform.dll 0xfc0d6000 0x0000aa88 0xfc0e1000 0x00002000        0
/pkg/lib/libsysmgr.dll   0xfc0e3000 0x0000aeac 0xfc0c395c 0x00000388        0
/pkg/lib/libinfra.dll    0xfc0ee000 0x000332ec 0xfc122000 0x00000c70        0
/pkg/lib/libios.dll      0xfc123000 0x0002c4bc 0xfc150000 0x00002000        0
/pkg/lib/libc.dll        0xfc152000 0x00077ae0 0xfc1ca000 0x00002000        0
/pkg/lib/libltrace.dll   0xfc1cc000 0x00007f5c 0xfc0c3ce4 0x00000188        0
/pkg/lib/libsyslog.dll   0xfc1d4000 0x0000530c 0xfc122c70 0x00000308        0
/pkg/lib/libbackplane.dll 0xfc1da000 0x0000134c 0xfc0c3e6c 0x000000a8        0
/pkg/lib/libnodeid.dll   0xfc1e7000 0x000091fc 0xfc1e61a8 0x00000208        0
/pkg/lib/libdebug.dll    0xfc23e000 0x0000ef64 0xfc1e6680 0x00000550        0
/pkg/lib/lib_procfs_util.dll 0xfc24d000 0x00004e2c 0xfc1e6bd0 0x000002a8        0
/pkg/lib/libsysdb.dll    0xfc252000 0x00046224 0xfc299000 0x0000079c        0
/pkg/lib/libsysdbutils.dll 0xfc29a000 0x0000ae04 0xfc29979c 0x000003ec        0
/pkg/lib/libwd_evm.dll   0xfc2a9000 0x0000481c 0xfc299b88 0x00000188        0
/pkg/lib/lrdlib.dll      0xfc2f6000 0x0000a900 0xfc2f551c 0x00000610        0
/pkg/lib/liblrfuncs.dll  0xfc30e000 0x00001998 0xfc2ebd80 0x000001ec        0
/pkg/lib/libdscapi.dll   0xfc310000 0x0000457c 0xfc2f5b2c 0x0000035c        0
/pkg/lib/liblrdshared.dll 0xfc315000 0x00005fec 0xfc31b000 0x00002000        0
/pkg/lib/libbag.dll      0xfc40c000 0x0000ee98 0xfc41b000 0x00000368        0
/pkg/lib/libchkpt.dll    0xfc477000 0x0002ee04 0xfc474388 0x00000950        0
/pkg/lib/libwd_notif.dll 0xfc4f8000 0x00005000 0xfc4fd000 0x00001000        0
/pkg/lib/libltrace_sdt.dll 0xfc65c000 0x000034fc 0xfc65b73c 0x00000568        0
/pkg/lib/libfabhandle.dll 0xfc6be000 0x00003354 0xfc65bca4 0x00000248        0
/pkg/lib/libfsdb_ltrace_util_rt.dll 0xfc6ea000 0x00001b74 0xfc605e50 0x00000108        0
/pkg/lib/libbcdl.dll     0xfc6fb000 0x0000f220 0xfc6fa6e8 0x0000045c        0
/pkg/lib/liblpts_pa_fgid.dll 0xfc8d7000 0x00006640 0xfc7acd5c 0x00000208        0
/pkg/lib/libfgid.dll     0xfc910000 0x0001529c 0xfc926000 0x00002000        0
/pkg/lib/libltimes.dll   0xfcecf000 0x00002964 0xfcdc4f20 0x000000a8        0
  
Current process = "pkg/bin/lpts_pa", PID = 57433 TID = 1
  
trace_back: #0 0xfc1106dc [MsgReceivev]
trace_back: #1 0xfc0fc840 [msg_receivev]
trace_back: #2 0xfc0fc64c [msg_receive]
trace_back: #3 0xfc0ffa70 [event_dispatch]
trace_back: #4 0xfc0ffc2c [event_block]
trace_back: #5 0x48201904 [<N/A>]
trace_back: #6 0x48201e3c [<N/A>]
  
ENDOFSTACKTRACE
  
Current process = "pkg/bin/lpts_pa", PID = 57433 TID = 2
  
trace_back: #0 0xfc1106dc [MsgReceivev]
trace_back: #1 0xfc0fc840 [msg_receivev]
trace_back: #2 0xfc0fc64c [msg_receive]
trace_back: #3 0xfc0ffa70 [event_dispatch]
trace_back: #4 0xfc0ffc2c [event_block]
trace_back: #5 0x4821e978 [<N/A>]
  
ENDOFSTACKTRACE
  
Current process = "pkg/bin/lpts_pa", PID = 57433 TID = 3
  
trace_back: #0 0xfc1106dc [MsgReceivev]
trace_back: #1 0xfc0fc840 [msg_receivev]
trace_back: #2 0xfc0fc64c [msg_receive]
trace_back: #3 0xfc0ffa70 [event_dispatch]
trace_back: #4 0xfc0ffc2c [event_block]
trace_back: #5 0x482064c4 [<N/A>]
  
ENDOFSTACKTRACE
   

次に、follow コマンドを使用して、PID 139406 を割り当てられたプロセスに関連付けられているスレッド 2 について、このスレッド 2 をブロックしているスレッドのチェーンをデバッグする例を示します。

RP/0/RSP0/CPU0:router# follow process 139406 blocked iteration 1 stackonly thread 2
  
Attaching to process pid = 139406 (pkg/bin/lpts_fm)
  
Iteration 1 of 1
------------------------------
  
Current process = "pkg/bin/lpts_fm", PID = 139406 TID = 2
  
trace_back: #0 0xfc110744 [MsgSendv]
trace_back: #1 0xfc0fbf04 [msg_sendv]
trace_back: #2 0xfc0fbbd8 [msg_send]
trace_back: #3 0xfcec7580 [pa_fm_close]
trace_back: #4 0xfcec78b0 [pa_fm_process_0]
  
ENDOFSTACKTRACE
  
REPLY (node node0_RP1_CPU0, pid 57433)
  
No specific TID, following all threads of 57433 (pkg/bin/lpts_pa)
-----------------------------------------------------------------
  
Current process = "pkg/bin/lpts_pa", PID = 57433 TID = 1
  
trace_back: #0 0xfc1106dc [MsgReceivev]
trace_back: #1 0xfc0fc840 [msg_receivev]
trace_back: #2 0xfc0fc64c [msg_receive]
trace_back: #3 0xfc0ffa70 [event_dispatch]
trace_back: #4 0xfc0ffc2c [event_block]
trace_back: #5 0x48201904 [<N/A>]
trace_back: #6 0x48201e3c [<N/A>]
  
ENDOFSTACKTRACE
  
Current process = "pkg/bin/lpts_pa", PID = 57433 TID = 2
  
trace_back: #0 0xfc1106dc [MsgReceivev]
trace_back: #1 0xfc0fc840 [msg_receivev]
trace_back: #2 0xfc0fc64c [msg_receive]
trace_back: #3 0xfc0ffa70 [event_dispatch]
trace_back: #4 0xfc0ffc2c [event_block]
trace_back: #5 0x4821e978 [<N/A>]
  
ENDOFSTACKTRACE
  
Current process = "pkg/bin/lpts_pa", PID = 57433 TID = 3
  
trace_back: #0 0xfc1106dc [MsgReceivev]
trace_back: #1 0xfc0fc840 [msg_receivev]
trace_back: #2 0xfc0fc64c [msg_receive]
trace_back: #3 0xfc0ffa70 [event_dispatch]
trace_back: #4 0xfc0ffc2c [event_block]
trace_back: #5 0x482064c4 [<N/A>]
  
ENDOFSTACKTRACE
    

Related Commands

コマンド

説明

monitor threads

自動更新されるプロセスとスレッドの統計情報を全画面モードで表示します。

show processes

実行しているプロセスの情報を表示します。

monitor processes

プロセスで自動更新される統計情報を全画面モードで表示するには、管理 EXEC モードまたは EXEC モードで monitor processes コマンドを使用します。

monitor processes [dumbtty] [ location node-id ]

Syntax Description

dumbtty

(任意)コマンドの出力をダム端末で表示されているように表示します(画面はリフレッシュされません)。

location node-id

(任意)コマンドの出力を指定されたノードから表示します。 node-id 引数は、ラック/スロット/モジュール の形式で入力します。

Command Default

すべてのキーワードを省略すると、monitor processes コマンドは、ローカル ノードでの CPU 使用率が高い上位 10 のプロセスを、使用時間で降順にソートして表示します。 この表示の内容は、q キーを押してコマンドを終了するまで、5 秒ごとにクリアされて更新されます。

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

CPU 使用率の高い上位 10 のプロセスを表示するには、monitor processes コマンドを使用します。 表示内容は 10 秒ごとにリフレッシュされます。

  • monitor processes コマンドによって表示されるパラメータを変更するには、表 1 に示されている対話型コマンドのいずれか 1 つを入力します。
  • 表示を終了してシステム プロンプトに戻るには、q キーを押します。
  • 対話型コマンドを一覧表示するには、表示中に ? を入力します。
表 2  monitor processes コマンドで利用可能な対話型コマンド

コマンド

説明

?

利用可能な対話型コマンドを表示します。

c

オープン チャネルの数で表示をソートします。

d

更新間の遅延インターバルを変更します。

f

オープン ファイルの数で表示をソートします。

k

プロセスを終了します。

l

画面をリフレッシュします。

m

使用されたメモリで表示をソートします。

n

表示するプロセスの数を変更します。

q

対話型の表示を終了して、プロンプトを EXEC モードに戻します。

t

表示を時間でソートします(デフォルト)。

Task ID

タスク ID

操作

basic-services

実行

Examples

次に、monitor processes コマンドの出力例を示します。

RP/0/RSP0/CPU0:routermonitor processes
  
195 processes; 628 threads; 3300 channels, 4579 fds
CPU states: 47.6% idle, 1.2% user, 51.1% kernel
Memory: 2048M total, 1576M avail, page size 4K
  
    JID TIDS Chans   FDs Tmrs   MEM   HH:MM:SS   CPU  NAME
      1   27  198     8    1      0    5:53:31 51.11% kernel
     52    5  215    44    5   228K    0:00:02  0.52% devc-conaux
    342    4  195    14    6     1M    0:00:08  0.34% wdsysmon
 495806    1    1    10    0   648K    0:00:00  0.16% ptop
    293    7   31    39   11   352K    0:00:09  0.07% shelfmgr
     55   11   24    14    5    16M    0:00:29  0.06% eth_server
    121    3   10     8    2   564K    0:00:05  0.02% bcm_process
    311    4    7    18    4   216K    0:00:02  0.01% sysdb_medusa_s
    138    4   14    40    5   240K    0:00:01  0.01% devc-vty
    265    5   31    19    4   204K    0:00:09  0.01% packet
    

次に、オプションの location node-id キーワードおよび引数を使用した monitor processes コマンドの出力例を示します。 モニタ プロセス

RP/0/RSP0/CPU0:router# monitor processes location 0/RP0/CPU0
  
202 processes; 724 threads; 3750 channels, 5092 fds
CPU states: 48.8% idle, 0.8% user, 1.5% kernel
Memory: 2048M total, 1526M avail, page size 4K
  
   JID TIDS Chans   FDs Tmrs   MEM   HH:MM:SS   CPU  NAME
     1   27  205     3    1      0   10:54:12  1.52% procnto-600-smp-cisco-instr
   264    5   42    19    4   272K    0:00:15  0.37% packet
    53    2  202   564    0     1M    0:00:06  0.10% dllmgr
   180   15   93    42    6     1M    0:00:19  0.05% gsp
    69   22   94     8    3     1M    0:00:54  0.04% qnet
    67    5    4     6    0   956K    0:00:04  0.03% pkgfs
   156    2    6    18    1   480K    0:00:00  0.02% envmon
   294    1    6    12    1   112K    0:00:00  0.02% showd_lc
   314    3  185    14    4     1M    0:00:17  0.02% sysdb_svr_local
   310    4    7    18    4   276K    0:00:07  0.02% sysdb_medusa_s
    

次に、dumbtty オプション キーワードを使用した show processes コマンドの出力例を示します。

RP/0/RSP0/CPU0:router# monitor processes dumbtty
  
Computing times...195 processes; 628 threads; 3721 channels, 4801 fds
CPU states: 37.1% idle, 1.1% user, 61.7% kernel
Memory: 2048M total, 1576M avail, page size 4K
  
    JID TIDS Chans   FDs Tmrs   MEM   HH:MM:SS   CPU  NAME
      1   27  198     6    1      0    6:33:33 61.76% kernel
 544958    1    1     8    0   648K    0:00:00  0.64% ptop
    293    7   31    39   11   352K    0:00:10  0.10% shelfmgr
    180   15   82    42    6     5M    0:00:26  0.10% gsp
    304    3   14    29    7   304K    0:00:02  0.06% statsd_manager
     55   11   24    14    5    16M    0:00:32  0.03% eth_server
     70   22   91     8    3     1M    0:00:31  0.03% qnet
    153    2   35    18    4   120K    0:00:01  0.03% dsc
    303    3   25    34    5   292K    0:00:00  0.03% statsd_server
    121    3   10     8    2   564K    0:00:06  0.03% bcm_process
  
195 processes; 628 threads; 3409 channels, 4601 fds
CPU states: 46.5% idle, 0.5% user, 52.8% kernel
Memory: 2048M total, 1576M avail, page size 4K
  
    JID TIDS Chans   FDs Tmrs   MEM   HH:MM:SS   CPU  NAME
      1   27  198     6    1      0    6:33:44 52.89% kernel
     52    5  215    44    5   228K    0:00:06  0.38% devc-conaux
    309    6   25    23    8   352K    0:00:08  0.03% sysdb_mc
    315    3  177    14    4     1M    0:00:12  0.03% sysdb_svr_local
    138    4   14    40    5   240K    0:00:02  0.02% devc-vty
    298    9   25   111    9     2M    0:00:09  0.01% snmpd
     67    4    4     7    0   804K    0:00:04  0.00% pkgfs
     53    2  195   547    0   944K    0:00:06  0.00% dllmgr
    311    4    7    18    4   216K    0:00:03  0.00% sysdb_medusa_s
    342    4  195    14    6     1M    0:00:08  0.00% wdsysmon  
  
表 3  monitor processes のフィールドの説明

フィールド

説明

JID

ジョブ ID。

TIDS

スレッド ID。

Chans

オープン チャネルの数。

FDs

オープン ファイル記述子の数。

Tmrs

タイマーの数。

MEM

現在使用中のダイナミック メモリ。

HH:MM:SS

最後の再起動からのプロセスのランタイム。

CPU

プロセス スレッドが使用する CPU の割合。

NAME

プロセス名。

Examples

インタラクティブ コマンドの使用

対話型コマンド n または d が使用されると、monitor processes コマンドにより、番号を入力するように求めるプロンプトが表示されます。 たとえば、対話型コマンド n が入力されると、プロンプトは次の例に示すように応答します。

Enter number of procs to display: 15
  
195 processes; 628 threads; 3375 channels, 4495 fds
CPU states: 49.0% idle, 0.9% user, 50.0% kernel
Memory: 2048M total, 1576M avail, page size 4K
  
    JID TIDS Chans   FDs Tmrs   MEM   HH:MM:SS   CPU  NAME
      1   27  198     2    1      0    6:11:43 50.01% kernel
     52    5  215    44    5   228K    0:00:05  0.72% devc-conaux
    293    7   31    39   11   352K    0:00:09  0.04% shelfmgr
    315    3  177    14    4     1M    0:00:11  0.03% sysdb_svr_local
    304    3   14    29    7   304K    0:00:01  0.02% statsd_manager
    309    6   25    23    8   352K    0:00:08  0.02% sysdb_mc
    342    4  195    14    6     1M    0:00:08  0.01% wdsysmon
    298    9   25   111    9     2M    0:00:09  0.00% snmpd
    265    5   31    19    4   204K    0:00:09  0.00% packet
    153    2   35    18    4   120K    0:00:00  0.00% dsc
    290    4    6    17    2   112K    0:00:00  0.00% sc_reddrv
    275    7   34    36    7   588K    0:00:00  0.00% qlink
    303    3   25    34    5   292K    0:00:00  0.00% statsd_server
    262    5   23    46    6     1M    0:00:00  0.00% ospf
    239    3   26    31    9   452K    0:00:00  0.00% lpts_pa
    

入力した番号が受け入れ可能な範囲にない場合、別の番号を入力するように求めるプロンプトが表示されます。

Enter number of procs to display: 435
Please enter a number between 5 and 40
Enter number of procs to display:
    

Related Commands

コマンド

説明

show processes

実行しているプロセスの情報を表示します。

monitor threads

スレッドで自動更新される統計情報を全画面モードで表示するには、管理 EXEC モードまたは EXEC モードで monitor threads コマンドを使用します。

monitor threads [dumbtty] [ iteration number ] [ location node-id ]

Syntax Description

dumbtty

(任意)コマンドの出力をダム端末で表示されているように表示します(画面はリフレッシュされません)。

iteration number

(任意)統計情報の表示が更新される回数(0 ~ 4294967295 の範囲)。

location node-id

(任意)コマンドからの出力を指定されたノードから表示します。 node-id 引数は、ラック/スロット/モジュール の形式で入力します。

Command Default

すべてのキーワードが省略されると、monitor threads コマンドは、使用された時間で降順にソートされたローカル ノードでの最初の 10 のスレッドを表示します。 この表示の内容は、コマンドを終了するまで、5 秒ごとにクリアされて更新されます。

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

CPU 使用率の高い上位 10 のスレッドを表示するには、monitor threads コマンドを使用します。 表示内容は 10 秒ごとにリフレッシュされます。

  • monitor threads コマンドによって表示されるパラメータを変更するには、表 1 に示されているキー コマンドのいずれか 1 つを入力します。
  • 表示を終了してシステム プロンプトに戻るには、q キーを押します。
  • 対話型コマンドを一覧表示するには、表示中に ? を入力します。

表 1で、利用可能な対話型表示コマンドについて説明します。

表 4  monitor threads コマンドの対話型表示コマンド

コマンド

説明

?

利用可能な対話型コマンドを表示します。

d

更新間の遅延インターバルを変更します。

k

プロセスを終了します。

l

画面をリフレッシュします。

n

表示するスレッドの数を変更します。

q

対話型の表示を終了して、プロンプトを EXEC モードに戻します。

Task ID

タスク ID

操作

basic-services

実行

Examples

次に、monitor threads コマンドの出力例を示します。

RP/0/RSP0/CPU0:routermonitor threads

195 processes; 628 threads;
CPU states: 98.2% idle, 0.9% user, 0.7% kernel
Memory: 2048M total, 1576M avail, page size 4K
  
   JID   TID LAST_CPU PRI STATE  HH:MM:SS      CPU  COMMAND
     1    12   1      10 Rcv     0:00:09     0.42% procnto-600-smp-cisco-instr
     1    25   1      10 Run     0:00:30     0.36% procnto-600-smp-cisco-instr
   342     1   1      19 Rcv     0:00:07     0.20% wdsysmon
    52     5   0      21 Rcv     0:00:03     0.15% devc-conaux
    52     3   1      18 Rcv     0:00:02     0.07% devc-conaux
532670     1   0      10 Rply    0:00:00     0.07% top
   293     6   0      55 Rcv     0:00:06     0.03% shelfmgr
    55     8   0      10 Rcv     0:00:02     0.03% eth_server
   315     3   0      10 Rcv     0:00:11     0.03% sysdb_svr_local
    55     7   0      55 Rcv     0:00:11     0.02% eth_server
    

次に、オプションの location キーワードを使用した monitor threads コマンドの出力例を示します。

RP/0/RSP0/CPU0:router# monitor threads location 0/RP0/CPU0

Computing times...195 processes; 628 threads;
CPU states: 95.1% idle, 2.7% user, 2.0% kernel
Memory: 2048M total, 1576M avail, page size 4K
  
   JID   TID LAST_CPU PRI STATE  HH:MM:SS      CPU  COMMAND
     1    25   0      10 Run     0:00:32     2.08% procnto-600-smp-cisco-instr
   265     5   0      10 SigW    0:00:09     0.89% packet
   279     1   1      10 Rcv     0:00:00     0.65% qsm
557246     1   0      10 Rply    0:00:00     0.51% top
   293     5   1      55 Rcv     0:00:01     0.07% shelfmgr
   180    13   1      10 Rcv     0:00:02     0.07% gsp
   315     3   0      10 Rcv     0:00:12     0.07% sysdb_svr_local
    55     7   1      55 Rcv     0:00:12     0.04% eth_server
   180     1   0      10 Rcv     0:00:01     0.04% gsp
   298     9   0      10 Rcv     0:00:01     0.04% snmpd
    

表 2 に、この出力で表示される重要なフィールドの説明を示します。

表 5  monitor threads のフィールドの説明

フィールド

説明

JID

ジョブ ID。

TIDS

スレッド ID。

LAST_CPU

オープン チャネルの数。

PRI

スレッドのプライオリティ レベル。

STATE

スレッドのステート。

HH:MM:SS

最後の再起動からのプロセスのランタイム。

CPU

プロセス スレッドが使用する CPU の割合。

COMMAND

プロセス名。

Examples

インタラクティブ コマンドの使用

対話型コマンド n または d が使用されると、monitor threads コマンドにより、特定の対話型コマンドに適した番号を求めるプロンプトが表示されます。 次に、スレッドの番号を変更するために、最初の表示サイクルの後でインタラクティブ n コマンドを使用した monitor threads コマンドの出力例を示します。

RP/0/RSP0/CPU0:routermonitor threads

Computing times... 87 processes; 249 threads;
CPU states: 84.8% idle, 4.2% user, 10.9% kernel
Memory: 256M total, 175M avail, page size 4K
  
   JID   TID PRI STATE  HH:MM:SS      CPU  COMMAND
     1     6  10 Run     0:00:10    10.92% kernel
553049     1  10 Rply    0:00:00     4.20% top
    58     3  10 Rcv     0:00:24     0.00% sysdbsvr
     1     3  10 Rcv     0:00:21     0.00% kernel
    69     1  10 Rcv     0:00:20     0.00% wdsysmon
     1     5  10 Rcv     0:00:20     0.00% kernel
   159     2  10 Rcv     0:00:05     0.00% qnet
   160     1  10 Rcv     0:00:05     0.00% netio
   157     1  10 NSlp    0:00:04     0.00% envmon_periodic
   160     9  10 Intr    0:00:04     0.00% netio
n  

Enter number of threads to display: 3
Please enter a number between 5 and 40
Enter number of threads to display: 8
87 processes; 249 threads;
CPU states: 95.3% idle, 2.9% user, 1.7% kernel
Memory: 256M total, 175M avail, page size 4K
  
   JID   TID PRI STATE  HH:MM:SS      CPU  COMMAND
     1     6  10 Run     0:00:11     1.76% kernel
    69     1  10 Rcv     0:00:20     1.11% wdsysmon
    58     3  10 Rcv     0:00:24     0.40% sysdbsvr
   157     1  10 NSlp    0:00:04     0.23% envmon_periodic
   159    19  10 Rcv     0:00:02     0.20% qnet
553049     1  10 Rply    0:00:00     0.20% top
   159    12  10 Rcv     0:00:03     0.13% qnet
   160     1  10 Rcv     0:00:05     0.10% netio
    

受け入れ可能な範囲にない番号が入力された場合、受け入れ可能な範囲が表示されます。

Please enter a number between 5 and 40
Enter number of threads to display: 
    

Related Commands

コマンド

説明

monitor processes

自動更新される対話型プロセスの統計情報を全画面モードで表示します。

process

プロセスを起動、終了、または再起動するには、管理 EXEC モードで process コマンドを使用します。

process { crash | restart | shutdown | start } { executable-name | job-id } location { node-id | all }

Syntax Description

crash

プロセスをクラッシュします。

restart

プロセスを再起動します。

shutdown

プロセスを停止します。 プロセスは(たとえ「必須」と見なされていても)再起動しません。

start

プロセスを起動します。

executable-name

起動、終了、または再起動するプロセスの実行ファイルの名前。 executable-name 引数に実行ファイル名を指定すると、同時に実行されているプロセスのすべてのインスタンスに対してアクションが実行されます(該当する場合)。

job-id

起動、終了、または再起動するプロセス インスタンスのジョブ ID。 job-id 引数にジョブ ID を指定すると、そのジョブ ID に関連付けられたプロセス インスタンスに対してだけアクションが実行されます。

location { node-id | all}

指定されたノードでプロセスを起動、終了、または再起動します。 node-id 引数は、ラック/スロット/モジュール の形式で入力します。 all キーワードでは、すべてのノードを指定します。

Command Default

デフォルトの動作または値はありません。

Command Modes

管理 EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

通常の状況下では、プロセスはオペレーティング システムによって、必要に応じて自動的に起動および再起動されます。 プロセスがクラッシュした場合、プロセスは自動的に再起動します。

このコマンドを使用して、個々のプロセスを手動で停止、起動、または再起動します。


注意    


プロセスを手動で停止または再起動すると、ルータの動作に重大な影響を与える場合があります。 これらのコマンドは、Cisco Technical Support 担当者が指示した場合に限り使用してください。


process shutdown

process shutdown コマンドは、指定のプロセスと指定のプロセスに関連付けられたコピーをシャットダウン(終了)します。 プロセスは(たとえ「必須」と見なされていても)再起動しません。 システムで実行されている実行可能ファイルのリストを表示するには、show processes コマンドを使用します。


注意    


プロセスを停止すると、RP スイッチオーバー、システム障害、またはこれら両方が発生する場合があります。 このコマンドは、Cisco Technical Support 担当者が指示した場合に限り使用されるものです。


process restart

process restart コマンドは、最適に機能してないようなプロセスを再起動します。

process start

process start コマンドは、process kill コマンドを使用して終了したプロセスのような、現在実行されていないプロセスを起動します。 システム上に複数のコピーが存在する場合、プロセスのすべてのインスタンスは同時に起動します。

Task ID

タスク ID

操作

root-lr

実行

Examples

次に、プロセスを再起動する例を示します。 この例では、IS-IS プロセスが再起動します。


RP/0/RSP0/CPU0:router# process restart isis
  
RP/0/RSP0/CPU0:router#RP/0/RSP0/CPU0:Mar 30 15:24:41 : isis[343]: %ISIS-6-INFO_ST
RTUP_START : Cisco NSF controlled start beginning
RP/0/RSP0/CPU0:router#RP/0/RSP0/CPU0:Mar 30 15:24:52 : isis[352]: %ISIS-6-INFO_ST
RTUP_FINISH : Cold controlled start completed
    

次に、プロセスを終了する例を示します。 この例では、IS-IS プロセスが停止します。

RP/0/RSP0/CPU0:routerprocess shutdown isis
RP/0/RSP0/CPU0:router#
  

次に、プロセスを起動する例を示します。 この例では、IS-IS プロセスが起動します。


RP/0/RSP0/CPU0:router# process start isis
  
RP/0/RSP0/CPU0:router#RP/0/RSP0/CPU0:Mar 30 15:27:19 : isis[227]: 
   %ISIS-6-INFO_STARTUP_START : Cold controlled start beginning 
RP/0/RSP0/CPU0:Mar 30 15:27:31 : isis[352]: %ISIS-6-INFO_STARTUP_FINISH : 
   Cold controlled start completed
    

Related Commands

コマンド

説明

process mandatory

必須のプロセスにオプションを設定します。

show processes

実行しているプロセスの情報を表示します。

process core

プロセスのコア ダンプ オプションを修正するには、管理 EXEC モードで process core コマンドを使用します。

process { executable-name | job-id } core { context | copy | fallback | iomem | mainmem | off | sharedmem | sparse | sync | text } [ maxcore value ] location node-id

Syntax Description

executable-name

コア ダンプ オプションを変更するプロセスの実行ファイル名。 executable-name 引数に値を指定すると、実行しているプロセスの複数のインスタンスのコア ダンプ オプションが変更されます。

job-id

プロセス インスタンスに関連付けられたジョブ ID。 job-id 値を指定すると、実行しているプロセスの単一のインスタンスのコア ダンプ オプションのみが変更されます。

context

プロセスのコンテキスト情報だけをダンプします。

copy

コア ダンプを実行する前に、コア ダンプをローカルにコピーします。

fallback

必要に応じて、フォールバック オプションを使用するためのコア ダンプ オプションを設定します。

iomem

プロセスの入出力メモリをダンプします。

mainmem

プロセスのメイン メモリをダンプします。

off

指定されたプロセスの終了時にコア ダンプが実行されないことを示します。

sharedmem

プロセスの共有メモリをダンプします。

sparse

プロセスのスパースなコア ダンプをイネーブルにします。

sync

同期コア ダンピングだけをイネーブルにします。

text

プロセスのテキストをダンプします。

maxcore value

(任意)指定のプロセスでの作成を許可されたコア ダンプの最大数を指定します。

location node-id

指定のノードでプロセスのコア ダンプ オプションを設定します。 node-id 引数は、ラック/スロット/モジュール の形式で入力します。

Command Default

デフォルトでは、プロセスは共有メモリ、テキスト領域、スタック、データ セクション、およびヒープ情報をダンプするように設定されています。

Command Modes

管理 EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

Cisco IOS XR ソフトウェアのモジュラ アーキテクチャが、個々のプロセスのコア ダンプを許可します。 デフォルトでは、プロセスは共有メモリ、テキスト領域、スタック、データ セクション、およびヒープ情報をダンプするように設定されています。

executable-name job-id 引数に実行ファイル名を指定すると、プロセスのすべてのインスタンスのコア ダンプ オプションが変更されます。 値にジョブ ID を指定すると、実行しているプロセスの単一のインスタンスのコア ダンプ オプションが変更されます。

Task ID

タスク ID

操作

root-lr

実行

Examples

次に、プロセスの共有メモリの収集をイネーブルにする例を示します。

RP/0/RSP0/CPU0:router# process ospf core sharedmem
         

次に、プロセスのコア ダンピングをオフにする例を示します。

RP/0/RSP0/CPU0:router# process media_ether_config_di core off
                     

Related Commands

コマンド

説明

show processes

実行しているプロセスの情報を表示します。

process mandatory

プロセスの必須のリブート オプションを設定するには、管理 EXEC モードまたは EXEC モードで process mandatory コマンドを使用します。

process mandatory

process mandatory { on | off } { executable-name | job-id } location node-id

process mandatory reboot

process mandatory reboot { enable | disable }

process mandatory toggle

process mandatory toggle { executable-name | job-id } location node-id

Syntax Description

on

必須のプロセスの属性をオンにします。

off

必須のプロセスの属性をオフにします。 プロセスは必須であると見なされていません。

reboot { enable | disable}

必須のプロセスに障害が発生したときに、リブート アクションをイネーブルまたはディセーブルにします。

toggle

必須のプロセスの属性を切り替えます。

executable-name

終了するプロセスの実行ファイル名。 executable-name 引数に実行ファイル名を指定すると、プロセスと、同時に実行されているコピーを終了できます(該当する場合)。

job-id

終了するプロセスに関連付けられているジョブ ID。 ジョブ ID に関連付けられているプロセスだけを終了します。

location node-id

指定したノードでプロセスの必須設定を設定します。 node-id 引数は、ラック/スロット/モジュール の形式で表されます。

Command Default

デフォルトの動作または値はありません。

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

プロセスの予期しないダウンが発生した場合、プロセスが必須であるかどうかに基づいて、次のアクションが発生します。

  • 必須のプロセスが再起動できない場合、ノードが自動的にリブートします。
  • 必須ではないプロセスが再起動できない場合、プロセスはダウンしたままでノードはリブートしません。

Task ID

タスク ID

操作

root-lr

実行

Examples

次に、必須の属性をオンにする例を示します。 この例では、media_ether_config_di プロセスの必須の属性がオンにされています。

RP/0/RSP0/CPU0:router# process mandatory on media_ether_config_di
         

次に、リブート オプションをオンにする例を示します。 この例では、必須のプロセスがダウンして再起動できない場合、ルータがノードをリブートするように設定されています。

RP/0/RSP0/CPU0:router# process mandatory reboot enable
  
RP/0/RSP00/CPU0:Mar 19 19:28:10 : sysmgr[71]: %SYSMGR-4-MANDATORY_REBOOT_ENABLE : 
mandatory reboot option enabled by request
    

次に、リブート オプションをオフにする例を示します。 この例では、必須のプロセスがダウンして再起動できない場合、ルータがノードをリブートしないように設定されています。 この例では、必須のプロセスは再起動しますが、ノードはリブートしません。

RP/0/RSP0/CPU0:router# process mandatory reboot disable
  
RP/0/RSP00/CPU0:Mar 19 19:31:20 : sysmgr[71]: %SYSMGR-4-MANDATORY_REBOOT_OVERRIDE
: mandatory reboot option overridden by request
  

Related Commands

コマンド

説明

show processes

実行しているプロセスの情報を表示します。

show context

コア ダンプのコンテキスト情報を表示するには、管理 EXEC モードまたは EXEC モードで show context コマンドを使用します。

show context [ coredump-occurrence | clear ] [ location { node-id | all } ]

Syntax Description

coredump-occurrence

(任意)コア ダンプの発生に基づいて表示されるコア ダンプのコンテキスト情報。 有効値は 1 ~ 10 です。

clear

(任意)現在のコンテキスト情報をクリアします。

location { node-id | all}

指定したノードで発生したコア ダンプ情報を表示します。 node-id 引数は、ラック/スロット/モジュール の形式で表されます。 all キーワードは、すべてのノードの情報を表示することを指定します。

Command Default

coredump-occurrence 値が指定されていない場合、すべてのコア ダンプのコア ダンプ コンテキスト情報が表示されます。

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

コア ダンプのコンテキスト情報を表示するには、show context コマンドを使用します。 このコマンドは、最新 10 個のコア ダンプのコンテキスト情報を表示します。 Cisco Technical Support Center のエンジニアや開発エンジニアは、このコマンドを使用してプロセスのデバッグを事後解析しています。

コア ダンプのコンテキスト情報をクリアするには、clear contextコマンドを使用します。

Task ID

タスク ID

操作

diag

読み取り

Examples

次に、show context コマンドの出力例を示します。

RP/0/RSP0/CPU0:router# show context
  
Crashed pid = 20502 (pkg/bin/mbi-hello)
Crash time: Thu Mar 25, 2004: 19:34:14
Core for process at disk0:/mbi-hello.20040325-193414.node0_RP0_CPU0
  
    Stack Trace
#0 0xfc117c9c
#1 0xfc104348
#2 0xfc104154
#3 0xfc107578
#4 0xfc107734
#5 0x482009e4
                Registers info
            r0       r1       r2       r3
  R0   0000000e  481ffa80  4820c0b8  00000003
            r4       r5       r6       r7
  R4   481ffb18  00000001  481ffa88  48200434
            r8       r9      r10      r11
  R8   00000000  00000001  00000000  fc17ac58
           r12      r13      r14      r15
  R12  481ffb08  4820c080  481ffc10  00000001
           r16      r17      r18      r19
  R16  481ffc24  481ffc2c  481ffcb4  00000000
           r20      r21      r22      r23
  R20  00398020  00000000  481ffb6c  4820a484
           r24      r25      r26      r27
  R24  00000000  00000001  4820efe0  481ffb88
           r28      r29      r30      r31
  R28  00000001  481ffb18  4820ef08  00000001
           cnt       lr      msr       pc
  R32  fc168d58  fc104348  0000d932  fc117c9c
           cnd      xer
  R36  24000022  00000004
  
                      DLL Info
DLL path    Text addr.  Text size   Data addr. Data size   Version
/pkg/lib/libinfra.dll  0xfc0f6000  0x00032698  0xfc0f5268  0x00000cb4 
    

次に、show context コマンドの出力例を示します。 出力には、クラッシュしなかったプロセスからのコア ダンプ情報が表示されます。

RP/0/RSP0/CPU0:router# show context
  
node:      node0_RP0_CPU0
------------------------------------------------------------------

Crashed pid = 28703 (pkg/bin/packet)
Crash time: Tue Sep 21, 2004: 02:48:00
Core for process at harddisk:/packet.by.dumper_gen.20040921-024800.node0_RP0_CPU0.ppc.Z
  

表 1 に、この出力で表示される重要なフィールドの説明を示します。

表 6  show context のフィールドの説明

フィールド

説明

Crashed pid

実行ファイルのパスがあとに続く、クラッシュしたプロセスのプロセス ID(PID)。

Crash time

クラッシュが発生した日時。

Core for process at

コア ダンプ ファイルへのファイル パス。

Stack Trace

スタック トレースの情報。

Registers Info

クラッシュしたスレッドに関する登録情報。

DLL Info

スタック トレースのデコードに使用する Dynamically loadable library(DLL)情報。

Related Commands

コマンド

説明

clear context

コア ダンプのコンテキスト情報をクリアします。

show dll

Dynamically loadable library(DLL)情報を表示するには、管理 EXEC モードまたは EXEC モードで show dll コマンドを使用します。

show dll [ jobid job-id [virtual] | [symbol] address virtual-address | dllname dll-virtual-path | memory | virtual ] [ location node-id ]

Syntax Description

jobid job-id

(任意)指定されたジョブ ID の DLL 情報を表示します。

virtual

(任意)DLL の仮想パスを表示します。 仮想パスは /pkg/lib/library-name.dll 形式で入力します。ライブラリ名は、.dll 拡張子が後に続く DLL 名となります。

symbol

(任意)virtual-address 引数に指定された仮想アドレスでシンボルを表示します。

address virtual-address

(任意)virtual-address 引数に指定された仮想アドレスでマッピングされる DLL を表示します。

dllname dll-virtual-path

(任意)dll-virtual-path 引数に指定された DLL をダウンロードしたプロセスのプロセス ID(PID)。

memory

(任意)DLL メモリ使用率のサマリーを表示します。

location node-id

(任意)指定されたノードの DLL を表示します。 node-id 引数は、ラック/スロット/モジュール の形式で表されます。

Command Default

デフォルトの動作または値はありません。

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

Task ID

タスク ID

操作

basic-services

読み取り

Examples

次に、show dll コマンドの出力例を示します。 この例では、ルータでロードされたすべての DLL が出力に表示されています。

RP/0/RSP0/CPU0:router# show dll
  
DLL path                            Text VA    Text Sz    Data VA    Data Sz    Refcount
----------------------------------------------------------------------------------------
/lib/libui.dll                      0xfc000000 0x00007000 0xfc007000 0x00001000    1
/disk0/asr9k-base-0.48.0/lib/liblogin.dll 0xfc008000 0x00006000 0xfc00e000 0x00001000    1
/mbi/lib/libbanner.dll              0xfc00f000 0x00003000 0xfc012000 0x00001000    1
/disk0/asr9k-base-0.48.0/lib/libaaav2.dll 0xfc013000 0x0000f000 0xfc022000 0x00001000    1
/disk0/asr9k-base-0.48.0/lib/libaaatty.dll 0xfc023000 0x00004000 0xfc027000 0x00001000    1
/mbi/lib/libtermcap.dll             0xfc028000 0x00003000 0xfc02b000 0x00001000    1
/mbi/lib/lib_show_dll.dll           0xfc02c000 0x00004000 0xfc030000 0x00001000    1
/mbi/lib/libihplatform.dll          0xfc0bf2d4 0x00000c18 0xfc1e4f88 0x00000068    1
/lib/libovl.dll                     0xfc0c8000 0x0000c3b0 0xfc0c21f0 0x0000076c   23
/disk0/asr9k-admin-0.48.0/lib/libfqm_ltrace_util_common.dll 0xfc0d43b0 0x00000bfc 0xfc391f7c 0x00000068    1
/lib/libplatform.dll                0xfc0d5000 0x0000aa88 0xfc0e0000 0x00002000  165
/lib/libsysmgr.dll                  0xfc0e2000 0x0000ab48 0xfc0c295c 0x00000368  166
/lib/libinfra.dll                   0xfc0ed000 0x0003284c 0xfc120000 0x00000c70  169
/lib/libios.dll                     0xfc121000 0x0002c4bc 0xfc14e000 0x00002000  166
/lib/libc.dll                       0xfc150000 0x00077ae0 0xfc1c8000 0x00002000  175
/mbi/lib/libltrace.dll              0xfc1ca000 0x00007f5c 0xfc0c2cc4 0x00000188   96
/lib/libsyslog.dll                  0xfc1d2000 0x0000530c 0xfc120c70 0x00000308  129
/disk0/asr9k-base-0.48.0/lib/liblpts_ifib_platform.dll 0xfc1d730c 0x00000cc8 0xfcef4000 0x00000068    1
/lib/libbackplane.dll               0xfc1d8000 0x0000134c 0xfc0c2e4c 0x000000a8  163
/disk0/asr9k-base-0.48.0/lib/libipv6_platform_client.dll 0xfc1d934c 0x00000c48 0xfcef4f8c 0x00000068    1
/mbi/lib/libpkgfs_node.dll          0xfc1da000 0x000092d4 0xfc1e4000 0x000001a8    3
    

次に、オプションの jobid job-id キーワードおよび引数を指定した show dll コマンドの出力例を示します。

RP/0/RSP0/CPU0:router# show dll jobid 186
  
DLLs mapped by PID 86111
DLL path                            Text VA    Text Sz    Data VA    Data Sz    Refcount
----------------------------------------------------------------------------------------
/lib/libovl.dll                     0xfc0c8000 0x0000c3b0 0xfc0c21f0 0x0000076c   23
/lib/libplatform.dll                0xfc0d5000 0x0000aa88 0xfc0e0000 0x00002000  165
/lib/libsysmgr.dll                  0xfc0e2000 0x0000ab48 0xfc0c295c 0x00000368  167
/lib/libinfra.dll                   0xfc0ed000 0x0003284c 0xfc120000 0x00000c70  169
/lib/libios.dll                     0xfc121000 0x0002c4bc 0xfc14e000 0x00002000  166
/lib/libc.dll                       0xfc150000 0x00077ae0 0xfc1c8000 0x00002000  175
/mbi/lib/libltrace.dll              0xfc1ca000 0x00007f5c 0xfc0c2cc4 0x00000188   96
/lib/libsyslog.dll                  0xfc1d2000 0x0000530c 0xfc120c70 0x00000308  129
/lib/libbackplane.dll               0xfc1d8000 0x0000134c 0xfc0c2e4c 0x000000a8  163
/lib/libnodeid.dll                  0xfc1e5000 0x000091fc 0xfc1e41a8 0x00000208  163
/mbi/lib/libinst_mem.dll            0xfc232000 0x000044f8 0xfc1e43b0 0x00000108    4
/lib/libdebug.dll                   0xfc23c000 0x0000ef64 0xfc1e4680 0x00000550  159

    

表 1 に、この出力で表示される重要なフィールドの説明を示します。

表 7  show dll のフィールドの説明

フィールド

説明

DLL path

ルータ上の DLL の物理パス。

Text VA

DLL のテキスト セグメントの仮想アドレス。

Text Sz

DLL のテキスト セグメントのサイズ。

Data VA

DLL のデータ セグメントの仮想アドレス。

Data Sz

DLL のデータ セグメントのサイズ。

Refcount

DLL を使用しているクライアントの数。

次に、オプションの dllname dll-virtual-path キーワードおよびオプション引数を指定した show dll コマンドの出力例を示します。

RP/0/RSP0/CPU0:router# show dll dllname /pkg/lib/libinst_mem.dll
  
PID:     4102  Refcount: 1
PID:     4105  Refcount: 1
PID:    24600  Refcount: 1
PID:    86111  Refcount: 1
    

表 2 に、この出力で表示される重要なフィールドの説明を示します。

表 8  show dll dllname のフィールドの説明

フィールド

説明

PID:

プロセスのプロセス ID。

Refcount

プロセスが DLL を参照する回数。

次に、オプションの memory キーワードを使用した show dll コマンドの出力例を示します。

RP/0/RSP0/CPU0:router# show dll memory
----------------------------------------------------------------------------
  
Total DLL Text - 14778896 bytes  Total DLL Data - 12688500 bytes
Total DLL Memory - 27467396 bytes
  

show exception

設定済みのコア ダンプ設定を表示するには、管理 EXEC モードまたは EXEC モードで show exception コマンドを使用します。

show exception [ core-options [ process process-name ] location node-id ]

Syntax Description

core-options

(任意)プロセス コア オプション値を表示します。

process process-name

(任意)情報を表示するにプロセスを指定します。

location node-id

(任意)指定されたノードの設定を表示します。 node-id 引数は、ラック/スロット/モジュール の形式で表されます。

Command Default

なし

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

リリース 3.9.0

core-options キーワードのサポートが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

設定済みのコア ダンプ設定を表示するには、show exception コマンドを使用します。 このコマンドからの出力には、次のコマンドで設定されたコア ダンプ設定が表示されます。

Task ID

タスク ID

操作

diag

読み取り

Examples

次に、location キーワードを指定した show exception コマンドの出力例を示します。 指定されたノードのすべてのプロセスが表示されます。

RP/0/RSP0/CPU0:router# show excep core-options location 0/rp0/cpu0

Mon Nov 30 01:31:31.391 PST
Process
        Options
attach_server:
        TEXT SHAREDMEM MAINMEM 
attachd:
        TEXT SHAREDMEM MAINMEM 
ksh-aux:
        TEXT SHAREDMEM MAINMEM 
bcm_logger:
        TEXT SHAREDMEM MAINMEM 
devf-scrp:
        TEXT SHAREDMEM MAINMEM 
bfm_server:
        TEXT SHAREDMEM MAINMEM 
ksh:
        TEXT SHAREDMEM MAINMEM 
dllmgr:
        COPY 
dumper:
        TEXT SHAREDMEM MAINMEM 
eth_server:
        COPY SPARSE 
inflator:
        TEXT SHAREDMEM MAINMEM 
insthelper:
        TEXT SHAREDMEM MAINMEM 
mbi-hello:
        TEXT SHAREDMEM MAINMEM 
cat:
        TEXT SHAREDMEM MAINMEM 
mq:
        COPY 
mqueue:
        TEXT SHAREDMEM MAINMEM 
nname:
        TEXT SHAREDMEM MAINMEM 
nvram:
        TEXT SHAREDMEM MAINMEM 
 --More--
  

次に、特定のプロセスに対する show exception コマンドの出力例を示します。

RP/0/RSP0/CPU0:router# show excep core-options process upgrade_daemon location 0/6/cpu0
  
Mon Nov 30 01:32:20.207 PST
Process
        Options
upgrade_daemon:
        TEXT SHAREDMEM MAINMEM   
  

Related Commands

コマンド

説明

exception filepath

コア ダンプ設定を修正します。

exception pakmem

コア ダンプでパケット メモリ情報を収集します。

exception sparse

スパースなコア ダンプをイネーブルまたはディセーブルにします。

exception sprsize

コア ダンプ ファイルの最大サイズを設定します。

show memory

ルータで、使用可能な物理メモリとプロセスのメモリ使用率に関する情報を表示するには、管理 EXEC モードまたは EXEC モードで show memory コマンドを使用します。

show memory [ jobid | summary [ bytes | detail ] ] location node-id

Syntax Description

job id

(任意)プロセス インスタンスに関連付けられたジョブ ID。 job-id 引数にジョブ ID を指定すると、指定のジョブ ID に関連付けられたプロセスのみに関する使用可能なメモリとメモリ使用率についての情報が表示されます。 job-id 引数が指定されていない場合、このコマンドは、実行しているすべてのプロセスの情報を表示します。

summary

(任意)物理メモリとメモリ使用率についての情報のサマリーを表示します。

bytes

(任意)正確なカウントをバイト数で表示します。

detail

(任意)数値を「nnn.dddM」形式で詳細に表示します。

location node-id

指定したノードの使用可能な物理メモリを表示します。 node-id 引数は、ラック/スロット/モジュール の形式で入力します。

Command Default

デフォルトの動作または値はありません。

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

ルータ全体の詳細なメモリ情報を表示するには、パラメータを指定せずに show memory コマンドを入力します。

Task ID

タスク ID

操作

basic-services

読み取り

Examples

次に、キーワードまたは引数を指定せずに入力された show memory コマンドの出力例の一部を示します。 このコマンドは、ルータ全体の詳細を表示します。

RP/0/RSP0/CPU0:router# show memory
  
  Physical Memory:2048M total
   Application Memory :1802M (1636M available)
   Image:116M (bootram:116M)
   Reserved:128M, IOMem:0, flashfsys:0
   Total shared window:0 
  
  kernel:jid 1
  Address         Bytes           What
  0008f000        12288           Program Stack
  000b2000        12288           Program Stack
  Total Allocated Memory:0
  Total Shared Memory:0
  
  sbin/devc-pty:jid 68
  Address         Bytes           What
  4817f000        4096            Program Stack (pages not allocated)
  48180000        516096          Program Stack (pages not allocated)
  481fe000        8192            Program Stack
  48200000        28672           Physical Mapped Memory
  48207000        4096            ANON FIXED ELF SYSRAM
  48208000        4096            ANON FIXED ELF SYSRAM
  
  

次に、ジョブ ID 7 を指定して入力された show memory コマンドの出力例を示します。ここでは、このジョブ ID に関連付けられたプロセスのメモリ使用率に関する情報が表示されています。

RP/0/RSP0/CPU0:routershow memory 7
  
  Physical Memory: 256M total
   Application Memory : 249M (217M available)
   Image: 2M (bootram: 2M)
   Reserved: 4M, IOMem: 0, flashfsys: 0
  
  sbin/pipe: jid 7
  Address         Bytes           What
  07f7c000        126976          Program Stack (pages not allocated)
  07f9b000        4096            Program Stack
  07f9d000        126976          Program Stack (pages not allocated)
  07fbc000        4096            Program Stack
  07fbe000        126976          Program Stack (pages not allocated)
  07fdd000        4096            Program Stack
  07fdf000        126976          Program Stack (pages not allocated)
  07ffe000        4096            Program Stack
  08000000        122880          Program Stack (pages not allocated)
  0801e000        8192            Program Stack
  08020000        12288           Physical Mapped Memory
  08023000        4096            Program Text or Data
  08024000        4096            Program Text or Data
  08025000        16384           Allocated Memory
  08029000        16384           Allocated Memory
  7c001000        319488          DLL Text libc.dll
  7e000000        8192            DLL Data libc.dll  
  

次に、ルータのメモリ情報の詳細なサマリーを表示する例を示します。

RP/0/RSP0/CPU0:router# show memory summary detail
  
  Physical Memory: 256.000M total
   Application Memory : 140.178M (15.003M available)
   Image: 95.739M (bootram: 95.739M)
   Reserved: 20.000M, IOMem: 0, flashfsys: 0
   Shared window fibv6: 257.980K
   Shared window PFI_IFH: 207.925K
   Shared window aib: 8.972M
   Shared window infra_statsd: 3.980K
   Shared window ipv4_fib: 1.300M
   Shared window atc_cache: 35.937K
   Shared window qad: 39.621K
   Total shared window: 10.805M
   Allocated Memory: 49.933M
   Program Text: 6.578M
   Program Data: 636.000K
   Program Stack: 4.781M
    
表 9  memory summary のフィールドの説明

フィールド

説明

Physical Memory

ルータで使用可能な物理メモリ。

Application Memory

ルータ上のすべてのプロセスの現在のメモリ使用率。

Image

現在イメージで使用されているメモリと使用可能なメモリ。

Reserved

予約されたメモリの合計。

IOMem

使用可能な入出力メモリ。

flashfsys

フラッシュ メモリの合計。

Shared window fibv6

内部の共有ウィンドウ情報。

Shared window PFI_IFH

内部の共有ウィンドウ情報。

Shared window aib

内部の共有ウィンドウ情報。

Shared window infra_statsd

内部の共有ウィンドウ情報。

Shared window ipv4_fib

内部の共有ウィンドウ情報。

Shared window atc_cache

内部の共有ウィンドウ情報。

Shared window qad

内部の共有ウィンドウ情報。

Total shared window

内部の共有ウィンドウ情報。

Allocated Memory

指定したノードに割り当てたメモリ量。

Program Text

内部のプログラム テスト情報。

Program Data

内部のプログラム データ情報。

Program Stack

内部のプログラム スタック情報。

Related Commands

コマンド

説明

show memory heap

プロセスのヒープ領域情報を表示します。

show processes

実行しているプロセスの情報を表示します。

show memory compare

ルータ上のすべてのプロセスについて、異なる時点のヒープ メモリ使用率を詳細に表示して結果を比較するには、管理 EXEC モードまたは EXEC モードで show memory compare コマンドを使用します。

show memory compare { start | end | report }

Syntax Description

start

ルータ上のすべてのプロセスについて、ヒープ メモリ使用率の初回のスナップショットを取得し、/tmp/memcmp_start.out という名前のテンポラリ ファイルにレポートを送信します。

end

ルータ上のすべてのプロセスについて、ヒープ メモリ使用率の 2 度目のスナップショットを取得し、/tmp/memcmp_end.out. という名前のテンポラリ ファイルにレポートを送信します。 このスナップショットは、ヒープ メモリ使用率の比較レポートが表示されるときに、初回のスナップショットと比較されます。

report

ヒープ メモリ使用率の 2 回のスナップショットを比較した、ヒープ メモリ比較レポートを表示します。

Command Default

デフォルトの動作または値はありません。

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

ルータ上のすべてのプロセスについて、異なる時点のヒープ メモリ使用率を詳細に表示して結果を比較するには、show memory compare コマンドを使用します。 このコマンドは、プロセスの再起動やインターフェイスの設定などのイベントで、メモリ使用率のパターンを検出するうえで役立ちます。

メモリのスナップショットを作成して比較するには、次の手順を実行します。

  1. ルータ上のすべてのプロセスに対するヒープ メモリ使用率の最初のスナップショットを取得するには、start キーワードを指定して show memory compare コマンドを入力します。

    (注)  


    スナップショットは、オプションとして summary キーワードを指定した show memory heapコマンドの入力結果と同様のものになります。


  2. 分析するテストを実行します。
  3. 最初のスナップショットと比較するヒープ メモリ使用率のスナップショットを取得するには、end キーワードを指定して show memory compare コマンドを入力します。
  4. ヒープ メモリ使用率の比較レポートを表示するには、report キーワードを指定して show memory compare コマンドを入力します。

Task ID

タスク ID

操作

basic-services

読み取り

Examples

次に、report キーワードを指定した show memory compare コマンドの出力例を示します。

RP/0/RSP0/CPU0:router# show memory compare report
  
  JID   name                 mem before   mem after    difference   mallocs  restarted
  ---   ----                 ----------   ---------    ----------   -------  ---------
  84    driver_infra_partner 577828       661492       83664        65           
  279   gsp                  268092       335060       66968        396          
  236   snap_transport       39816        80816        41000        5            
  237   mpls_lsd_agent       36340        77340        41000        5            
  268   fint_partner         24704        65704        41000        5            
  90    null_caps_partner    25676        66676        41000        5            
  208   aib                  55320        96320        41000        5            
  209   ipv4_io              119724       160724       41000        5            
  103   loopback_caps_partne 33000        74000        41000        5            
  190   ipv4_arm             41432        82432        41000        5            
  191   ipv6_arm             33452        74452        41000        5            
  104   sysldr               152164       193164       41000        5            
  85    nd_partner           37200        78200        41000        5            
  221   clns                 61520        102520       41000        5            
  196   parser_server        1295440      1336440      41000        5            
  75    bundlemgr_distrib    57424        98424        41000        5            
  200   arp                  83720        124720       41000        5            
  201   cdp                  56524        97524        41000        5            
  204   ether_caps_partner   39620        80620        41000        5            
  206   qosmgr               55624        96624        41000        5            
  240   imd_server           92880        104680       11800        28           
  260   improxy              77508        88644        11136        10           
  111   nrssvr               29152        37232        8080         60           
  275   sysdb_svr_local      1575532      1579056      3524         30           
  205   cfgmgr               31724        33548        1824         25           
  99    sysdb_svr_shared     1131188      1132868      1680         14           
  51    mbus-rp              26712        27864        1152         4            
  66    wdsysmon             298068       299216       1148         15           
  168   netio                1010912      1012060      1148         6            
  283   itrace_manager       17408        17928        520          3            
  59    devc-conaux          109868       110300       432          4            
  67    syslogd_helper       289200       289416       216          2            
  117   fctl                 41596        41656        60           2            
  54    sysmgr               171772       171076       -696         -5           
  269   ifmgr                539308       530652       -8656        -196        *
    
表 10  show memory compare report のフィールドの説明

フィールド

説明

JID

プロセスのジョブ ID。

name

プロセス名。

mem before

起動時のヒープ メモリ使用率(バイト数)。

mem after

終了時のヒープ メモリ使用率(バイト数)。

difference

ヒープ メモリ使用率の差異(バイト数)。

mallocs

テスト期間中に発生した解放されていない割り当ての数。

restarted

テスト期間中にプロセスが再起動したかどうかを示します。

Related Commands

コマンド

説明

show memory heap

プロセスのヒープ領域情報を表示します。

show processes

実行しているプロセスの情報を表示します。

show memory heap

プロセスのヒープ領域情報を表示するには、管理 EXEC モードまたは EXEC モードで show memory heap コマンドを使用します。

show memory heap [allocated] [dllname] [failure] [free] { jobid | all }

Syntax Description

allocated

(任意)割り当てられたすべてのヒープ ブロックのリストを表示します。

dllname

(任意)ヒープを Dynamic Link Library(DLL)名で表示します。

failure

(任意)ヒープ障害のサマリーを表示します。

free

(任意)すべてのフリー ヒープ ブロックのリストを表示します。

summary

(任意)ヒープ領域情報のサマリーを表示します。

job-id

プロセス インスタンスに関連付けられたジョブ ID。

all

(任意)すべてのプロセスのヒープ領域情報を表示します。 all キーワードは、failure または summary キーワードが使用されている場合に限り使用できます。

Command Default

デフォルトの動作または値はありません。

Command Modes

管理 EXEC

EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

Task ID

タスク ID

操作

basic-services

読み取り

Examples

次に、job-id 引数にジョブ ID を指定した show memory heap コマンドの出力例を示します。

RP/0/RSP0/CPU0:routershow memory heap 111
  
  Malloc summary for pid 16433:
    Heapsize 16384: allocd 6328, free 8820, overhead 1236
    Calls: mallocs 144; reallocs 73; frees 5; [core-allocs 1; core-frees 0]
  Block Allocated List
  Total      Total      Block       Name/ID/Caller
  Usize      Size       Count
  
  0x000008c1 0x000008cc 0x00000001  0x7c018a10
  0x000005ac 0x00000974 0x00000079  0x7c02b9e0
  0x000004f0 0x000004f8 0x00000001  0x7c02b6fc
  0x00000080 0x00000088 0x00000001  0x7c01936c
  0x00000034 0x00000048 0x00000001  0x7c018954
  0x00000024 0x00000030 0x00000001  0x7c019278
  0x00000018 0x00000020 0x00000001  0x7c019b2c
  0x00000008 0x00000010 0x00000001  0x7c017178
  0x00000008 0x00000010 0x00000001  0x7c00fb54
  0x00000008 0x00000010 0x00000001  0x7c00fb80
  0x00000008 0x00000010 0x00000001  0x7c00fbb8
  
  
表 11  show memory heap のフィールドの説明

フィールド

説明

Malloc summary for pid

システム定義のプロセス ID(PID)。

Heapsize

malloc ライブラリによってシステムから割り当てられたヒープのサイズ。

allocd

プロセスに割り当てられたバイト数。

free

ヒープで使用可能なバイト数。

overhead

Malloc ライブラリのオーバーヘッド(バイト数)。

mallocs

malloc コールの回数。

reallocs

realloc コールの回数。

frees

malloc ライブラリで提供される、メモリの割り当てを解除するための発信側インターフェイスへの呼び出し回数。

[core-allocs 1; core-frees 0]

コア メモリのユニット数。システムからヒープとして割り当てられた malloc ライブラリのメモリ ユニット。それぞれ、割り当て、解放を示します。

次に、summary job-id キーワードおよび引数を指定した show memory heap コマンドの出力例を示します。

RP/0/RSP0/CPU0:routershow memory heap summary 65
  
  Malloc summary for pid 20495 process pcmciad:
    Heapsize 65536: allocd 40332, free 16568, overhead 8636
    Calls: mallocs 883; reallocs 3; frees 671; [core-allocs 4; core-frees 0]
  Band size 16, element per block 48, nbuint 1
    Completely free blocks: 0
    Block alloced: 2, Block freed: 0
    allocs: 85, frees: 20
    allocmem: 1040, freemem: 496, overhead: 448
    blocks: 2, blknodes: 96
  Band size 24, element per block 34, nbuint 1
    Completely free blocks: 0
    Block alloced: 1, Block freed: 0
    allocs: 243, frees: 223
    allocmem: 480, freemem: 336, overhead: 168
    blocks: 1, blknodes: 34
  Band size 32, element per block 26, nbuint 1
    Completely free blocks: 0
    Block alloced: 1, Block freed: 0
    allocs: 107, frees: 97
    allocmem: 320, freemem: 512, overhead: 136
    blocks: 1, blknodes: 26
  Band size 40, element per block 22, nbuint 1
    Completely free blocks: 0
    Block alloced: 2, Block freed: 0
    allocs: 98, frees: 74
    allocmem: 960, freemem: 800, overhead: 240
    blocks: 2, blknodes: 44
  Band size 48, element per block 18, nbuint 1
    Completely free blocks: 0
    Block alloced: 1, Block freed: 0
    allocs: 53, frees: 42
    allocmem: 528, freemem: 336, overhead: 104
    blocks: 1, blknodes: 18
  Band size 56, element per block 16, nbuint 1
    Completely free blocks: 0
    Block alloced: 1, Block freed: 0
    allocs: 8, frees: 4
    allocmem: 224, freemem: 672, overhead: 96
    blocks: 1, blknodes: 16
  Band size 64, element per block 14, nbuint 1
    Completely free blocks: 0
    Block alloced: 1, Block freed: 0
    allocs: 6, frees: 2
    allocmem: 256, freemem: 640, overhead: 88
    blocks: 1, blknodes: 14
  Band size 72, element per block 12, nbuint 1
    Completely free blocks: 0
    Block alloced: 1, Block freed: 0
    allocs: 1, frees: 0
    allocmem: 72, freemem: 792, overhead: 80
    blocks: 1, blknodes: 12
  
  
表 12  show memory heap summary のフィールドの説明

フィールド

説明

Malloc summary for pid

システム定義のプロセス ID(pid)。

Heapsize

malloc ライブラリによってシステムから割り当てられたヒープのサイズ。

allocd

プロセスに割り当てられたバイト数。

free

ヒープで使用可能なバイト数。

overhead

Malloc ライブラリのオーバーヘッド(バイト数)。

mallocs

malloc コールの回数。

reallocs

realloc コールの回数。

frees

malloc ライブラリで提供される、メモリの割り当てを解除するための発信側インターフェイスへの呼び出し回数。

[core-allocs 1; core-frees 0]

コア メモリのユニット数。システムからヒープとして割り当てられた malloc ライブラリのメモリ ユニット。それぞれ、割り当て、解放を示します。

Band size

小さなメモリ要素が帯域に配列されます。 帯域サイズは帯域内の要素のサイズを指定します。

element per block

帯域でのブロックごとの要素数。

nbunit

1 つのブロックが構成するメモリ ユニット数。 すべての帯域のすべてのブロックは、この基本ユニットの倍数となる整数のサイズになります。

Completely free blocks

帯域内の完全にフリーな(割り当てに使用できる)ブロック数。

Block alloced

帯域用に現在割り当てられているブロックの数。

allocs

帯域から限界実行されているすべての割り当ての数。

frees

メモリを帯域に戻したフリー コールの回数。

allocmem

帯域から現在割り当てられているメモリ量。

overhead

帯域を管理するためのオーバーヘッドとしてのメモリ量(バイト数)。

blocks

現在帯域にあるブロックの数。

blknodes

帯域内にあるすべてのブロックのノード(要素)数。

Related Commands

コマンド

説明

show memory

ルータで使用可能な物理メモリとプロセス メモリを表示します。

show processes

アクティブ プロセスの情報を表示するには、管理 EXEC モードまたは EXEC モードで show processes コマンドを使用します。

show processes { job-id | process-name | aborts | all | blocked | boot | cpu | distribution process-name | dynamic | failover | family | files | location node-id | log | mandatory | memory | pidin | searchpath | signal | startup | threadname } [ location node-id ] [detail] [run]

Syntax Description

job-id

ジョブ ID。job-id 引数に関連付けられたこのジョブ ID のプロセス インスタンス情報のみが表示されます。

process-name

同時に実行されているすべてのインスタンスが表示されているプロセスの名前(該当する場合)。

aborts

プロセスの中断情報を表示します。

all

すべてのプロセスの情報のサマリーを表示します。

blocked

応答、送信、および相互排除ブロック プロセスの詳細を表示します。

boot

プロセスのブート情報を表示します。

cpu

各プロセスの CPU 使用率を表示します。

distribution

プロセスの配布を表示します。

dynamic

動的に作成されたプロセスのプロセス データを表示します。

failover

プロセス スイッチオーバー情報を表示します。

family

プロセスのセッションとファミリ情報を表示します。

files

オープン ファイルとオープン通信チャネルについての情報を表示します。

location node-id

指定したノードのアクティブ プロセスの情報を表示します。 node-id 引数は、ラック/スロット/モジュール の形式で入力します。

log

プロセスのログを表示します。

mandatory

必須のプロセスのプロセス データを表示します。

memory

プロセスのテキスト、データ、およびスタック使用率に関する情報を表示します。

pidin

QNX コマンドを使用するすべてのプロセスを表示します。

searchpath

サーチ パスを表示します。

signal

ブロック、保留、無視、およびキューイングされた信号の信号オプションを表示します。

startup

起動時に作成されたプロセスのデータを表示します。

threadname

スレッド名を表示します。

detail

(任意)詳細を表示します。 このオプションは、process-name 引数のみで利用できます。

run

(任意)実行しているプロセスの情報だけを表示します。 このオプションは、process-name 引数のみで利用できます。

Command Default

デフォルトの動作または値はありません。

Command Modes

EXEC

管理 EXEC

Command History

リリース

変更箇所

リリース 3.7.2

このコマンドが追加されました。

Usage Guidelines

このコマンドを使用するには、適切なタスク ID を含むタスク グループに関連付けられているユーザ グループに属している必要があります。 ユーザ グループの割り当てのためにコマンドを使用できない場合は、AAA 管理者に連絡してください。

アクティブ プロセスの一般情報を表示するには、show processes コマンドを使用します。 プロセスのより詳細な情報を表示するには、job-id 引数または process-name 引数に、それぞれジョブ ID またはプロセスを指定します。

また、monitor processesコマンドを使用して、CPU 使用率の最も高いプロセスとスレッドを判断することもできます。

Task ID

タスク ID

操作

basic-services

読み取り

Examples

process-name 引数を指定した show processes コマンドは、プロセスの詳細情報を表示します。

RP/0/RSP0/CPU0:router# show processes ospf 

Tue Jul 28 09:23:17.212 DST
                  Job Id: 338
                     PID: 336152
         Executable path: /disk0/asr9k-rout-3.9.0.14I/bin/ospf
              Instance #: 1
              Version ID: 00.00.0000
                 Respawn: ON
           Respawn count: 1
  Max. spawns per minute: 12
            Last started: Tue Jul 14 15:26:26 2009
           Process state: Run
           Package state: Normal
       Started on config: cfg/gl/ipv4-ospf/proc/100/ord_z/config
                    core: MAINMEM 
               Max. core: 0
               Placement: Placeable
            startup_path: /pkg/startup/ospf.startup
                   Ready: 1.312s
               Available: 1.334s
        Process cpu time: 93.382 user, 13.902 kernel, 107.284 total
JID   TID CPU Stack pri state        TimeInState    HR:MM:SS:MSEC   NAME
338    1    0  116K  10 Receive        0:00:00:0375    0:00:47:0139 ospf
338    2    0  116K  10 Receive        0:00:05:0734    0:00:00:0029 ospf
338    3    1  116K  10 Receive        0:00:06:0765    0:00:00:0056 ospf
338    4    1  116K  10 Receive        0:00:00:0096    0:00:00:0698 ospf
338    5    1  116K  10 Receive        0:49:33:0609    0:00:00:0129 ospf
338    6    1  116K  10 Sigwaitinfo  329:56:49:0531    0:00:00:0000 ospf
338    7    0  116K  10 Receive        0:00:00:0816    0:00:58:0676 ospf
338    8    1  116K  10 Receive        0:00:06:0765    0:00:00:0043 ospf
338    9    1  116K  10 Condvar       82:30:01:0311    0:00:00:0029 ospf
338    10   1  116K  10 Receive       82:30:05:0188    0:00:00:0478 ospf
338    11   0  116K  10 Receive      329:54:49:0318    0:00:00:0005 ospf
-------------------------------------------------------------------------------
               
表 13  show processes のフィールドの説明

フィールド

説明

Job id

ジョブ ID。 このフィールドは、プロセスの再起動後も一定のまま保持されます。

PID

プロセス ID。 このフィールドは、プロセスが再起動すると変更されます。

Executable path

プロセス実行ファイルのパス。

Instance

指定の時間に実行されているプロセスのインスタンスが複数存在する場合があります(各インスタンスに複数のスレッドが存在する場合があります)。

Version ID

API バージョン。

Respawn

ON または OFF。 このフィールドは、障害発生時にこのプロセスを自動的に再起動するかどうかを示します。

Respawn count

このプロセスが起動または再起動した回数(つまり、初回起動時のカウントは 1 となります)。

Max. spawns per minute

1 分を超過しない復元時間。 この数値を超過すると、プロセスは再起動を停止します。

Last started

プロセスが最後に起動された日時。

Process state

プロセスの現在のステート。

Started on config

このプロセスを起動した(または起動する可能性のある)コンフィギュレーション コマンド。

core

コア ファイルに含めるメモリ セグメント。

Max. core

コア ファイルをダンプする回数。 0 = 無限。

memory キーワードを指定した show processes コマンドは、次の例に示すように、指定またはすべてのプロセスのメモリ使用率の詳細を表示します。

RP/0/RSP0/CPU0:routershow processes memory
  
  JID    Text     Data     Stack    Dynamic  Process
  55     28672    4096     69632    17072128 eth_server
  317    167936   4096     45056    10526720 syslogd
  122    512000   4096     77824    9797632  bgp
  265    57344    4096     57344    5877760  parser_server
  254    40960    4096     143360   3084288  netio
  63     8192     4096     24576    2314240  nvram
  314    4096     4096     36864    1699840  sysdb_svr_local
  341    495616   4096     40960    1576960  wdsysmon
  259    53248    4096     28672    1490944  nvgen_server
  189    32768    4096     32768    1425408  hd_drv
  69     77824    4096     110592   1421312  qnet
  348    323584   4096     40960    1392640  ospf
  347    323584   4096     40960    1392640  ospf
  346    323584   4096     40960    1392640  ospf
  345    323584   4096     40960    1392640  ospf
  344    323584   4096     40960    1392640  ospf
  261    323584   4096     40960    1392640  ospf
   --More--
    
表 14  show processes memory のフィールドの説明

フィールド

説明

JID

ジョブ ID。

Text

テキスト領域のサイズ(プロセス実行ファイル)。

Data

データ領域のサイズ(初期化された変数と初期化されていない変数)。

Stack

プロセス スタックのサイズ。

Dynamic

ダイナミックに割り当てられたメモリのサイズ。

Process

プロセス名。

show processes コマンドに all キーワードを指定すると、次の例のように、すべてのプロセスのサマリー情報が表示されます。

RP/0/RSP0/CPU0:router# show processes all
  
  JID    LAST STARTED            STATE    RE-     PLACE-  MANDA-  MAINT- NAME(IID) ARGS
                                          START   MENT    TORY    MODE
  -------------------------------------------------------------------------------------
  82     03/16/2007 14:54:52.488 Run      1               M      Y      wd-mbi(1)
  58     03/16/2007 14:54:52.488 Run      1               M      Y      dllmgr(1)-r 60 -u 30
  74     03/16/2007 14:54:52.488 Run      1               M      Y      pkgfs(1)
  57     03/16/2007 14:54:52.488 Run      1                      Y      devc-conaux(1) -h -d 
                                                                        librs232.dll -m 
                                                                        libconaux.dll -u 
                                                                        libst16550.dll
  76     03/16/2007 14:54:52.488 Run      1                      Y      devc-pty(1) -n 32
  56     Not configured          None     0                      Y      clock_chip(1) -r -b
   --More--
  
  
表 15  show processes all のフィールドの説明

フィールド

説明

JID

ジョブ ID。

Last Started

プロセスが最後に起動された日。

State

プロセスのステート。

Restart

ノードが起動してからプロセスが再起動した回数。 ノードがリロードされると、すべてのプロセスの再起動カウントがリセットされます。 通常、プロセスは再起動しないため、この値は 1 となります。 ただし、process restart コマンドを使用してプロセスを再起動すると、プロセスの再起動カウントは 1 つずつ増加します。

Placement

プロセスが配置できるプロセスかどうかを示します。 ほとんどのプロセスは配置できないプロセスであるため、この値は空白になります。 配置できるプロセスは、ISIS、OSPF、BGP などです。

Mandatory

M は、プロセスが必須のプロセスであることを示します。 必須のプロセスは実行する必要があります。 必須のプロセスを起動できない場合(たとえば、sysmgr がプロセスを開始したがクラッシュし続ける場合など)、5 回の試行の後、sysmgr が問題を修正する目的でノードをリロードします。 必須のプロセスが実行されない場合、ノードは正常に機能しません。

Maint Mode

ノードがメンテナンス モードのときに実行する必要があるプロセスを示します。 メンテナンス モードは、問題の発生が疑われるときに、カード上で診断を行うためにできる限り少ないプロセスを実行する目的で使用されます。 ただし、診断の場合でもいくつかのサービスを実行する必要があります。

Name(IID)

あとにインスタンス ID が続くプロセスの名前。 プロセスは複数のインスタンスを実行できるため、IID はインスタンス ID となります。

Args

プロセスへのコマンドライン引数。

Related Commands

コマンド

説明

monitor processes

自動更新される対話型プロセスの統計情報を全画面モードで表示します。

monitor threads

自動更新されるプロセスとスレッドの統計情報を全画面モードで表示します。