- RSS フィードを購読する
- 新着としてマーク
- 既読としてマーク
- ブックマーク
- 購読
- 印刷用ページ
- 不適切なコンテンツを報告
2023-10-25 11:58 AM 2023-10-26 09:18 AM 更新
はじめに
Cisco ACI のエンジニアは、パケット転送の問題をトラブルシューティングする際、ラボの機器やお客様の機器から、しばしば ELAM レポートを収集します。ELAM は ACI スイッチのパケット転送の問題をトラブルシューティングする際に非常に有用なツールですが、レポートの収集にあたり、以下のような難しい点もあります。
- レポートを収集する際に ELAM をトリガーするためにセットするパラメータが複雑で ELAM に関する知識を要するため、ACI の初級レベルのエンジニアは取得が難しい場合があります。
- ELAM を簡単に実行し、結果をデコードすることができる ELAM Assistant という便利なアプリも用意されていますが、商用環境の ACI ファブリックにアプリをインストールすることが許可されないお客様環境も多くあります。また、通常そういったお客様の環境では、Cisco ACI のエンジニアがトラブルシューティングのために Webex を通じてお客様の機器へアクセスすることも許可されない場合が多いです。そういった場合、調査が必要なパケットフローについてのレポートを収集するためのパラメータを含む ELAM コマンドを Cisco ACI のエンジニアがお客様に伝える必要があります。
今回ご紹介するツールを使用することで、ACI スイッチに搭載されている ASIC のファミリー名や in-select/out-select など ELAM のパラメータについての知識がなくても簡単に ELAM レポートを収集することができます。以下に、このツールの「インストール方法」と「使用方法」をご紹介いたします。
このツールは GitHub と Cisco Code Exchange で公開されています。ご質問やコメント、問題や改善のご要望などがある場合は、こちら から新しい Discussion を作成/開始いただくか、GitHub リポジトリで issue を登録してください。
- GitHub repository: https://github.com/tskanai1/elam-tool2
- Cisco Code Exchange: https://developer.cisco.com/codeexchange/github/repo/tskanai1/elam-tool2/
インストール方法
このツールはローカルマシン(クライアント)または APIC 上で実行することができます。Python 3.10 以上がローカルマシンにインストールされていればインストールは簡単で、ローカルマシンがファブリック内の APIC と接続性を持っていれば任意の ACI ファブリックに対してツールを実行することもできますので、その場合、ツールはローカルマシン上で実行することが推奨されます。
ローカルマシンにインストールする方法
前提条件:
- Linux と macOS がサポートされています。Windows の場合、このツールが pexpect.spawn を使用しており、ネイティブの Windows では利用できないため、WSL を使用してください (参照).
- Python の バージョンは 3.10 以降である必要があります。以下のコマンドを実行してツールをインストールしてください。
$ pip install git+https://github.com/tskanai1/elam-tool2.git
Collecting git+https://github.com/tskanai1/elam-tool2.git
----- snip -----
Building wheels for collected packages: elam-tool2
----- snip -----
Successfully built elam-tool2
Installing collected packages: elam-tool2
Successfully installed elam-tool2-1.2.0
インストール後 elam_multi_dev と elam_report_generator の2つの elam コマンドが使用可能になります。
$ elam_<TAB><TAB>
elam_multi_dev elam_report_generator
APIC にインストールする方法
the elam-tool2's package をダウンロードし、ダウンロードした zip ファイルを APIC のホームディレクトリに置きます。
ファイルを解凍後 elam-tool2-main ディレクトリへ移動しsetup_on_apic.sh
を実行してツールをインストールします。
fab3-apic1# bash
admin@fab3-apic1:~> unzip elam-tool2-main.zip
Archive: elam-tool2-main.zip
70146dc348b0ec5870580ecc7641fc63477b0d25
creating: elam-tool2-main/
inflating: elam-tool2-main/.gitignore
inflating: elam-tool2-main/README.md
creating: elam-tool2-main/elam_tool2/
extracting: elam-tool2-main/elam_tool2/__init__.py
inflating: elam-tool2-main/elam_tool2/elam_multi_dev.py
inflating: elam-tool2-main/elam_tool2/elam_report_generator.py
----- snip -----
admin@fab3-apic1:~> cd elam-tool2-main
admin@fab3-apic1:elam-tool2-main> ./setup_on_apic.sh
### Setup elam-tool2 on APIC ...
### Installing pexpect-4.8.0 ...
----- snip -----
### Installed packages are:
pexpect pexpect-4.8.0-py3.7.egg-info ptyprocess ptyprocess-0.7.0-py3.7.egg-info
### Setup is completed!
----- snip -----
インストール後、以下のようにツールが使えるようになります。
admin@fab3-apic1:elam-tool2-main> python3 elam_tool2/elam_report_generator.py
On which platform are you running the script, client or apic? [client/apic]: apic
----- snip -----
APIC でのツールの使用方法は、コマンド実行前にpython3
と入力する必要がある点を除き、クライアントでの使用方法と同じです。
APIC からのアンインストール方法
APIC から Python スクリプトとインストールされたパッケージをアンインストールしたい場合は、elam-tool2-main ディレクトリ配下でuninstall_on_apic.sh
を実行します。
fab3-apic1# bash
admin@fab3-apic1:~> cd elam-tool2-main
admin@fab3-apic1:elam-tool2-main> ./uninstall_on_apic.sh
### Uninstall elam-tool2 on APIC ...
### Uninstalling pexpect-4.8.0 ...
/usr/lib/python3.8/distutils/dist.py:274: UserWarning: Unknown distribution option: 'install_requires'
warnings.warn(msg)
running install
running build
running build_py
running install_lib
running install_egg_info
Removing /home/admin/.local/lib/python3.8/site-packages/pexpect-4.8.0.egg-info
Writing /home/admin/.local/lib/python3.8/site-packages/pexpect-4.8.0.egg-info
writing list of installed files to 'pexpect_list.txt'
### Uninstalling ptyprocess-0.7.0 ...
running install
running build
running build_py
running install_lib
running install_egg_info
Removing /home/admin/.local/lib/python3.8/site-packages/ptyprocess-0.7.0.egg-info
Writing /home/admin/.local/lib/python3.8/site-packages/ptyprocess-0.7.0.egg-info
writing list of installed files to 'ptyprocess_list.txt'
### Remove elam-tool2 directory
### No packages should be here:
pexpect-4.8.0-py3.7.egg-info ptyprocess-0.7.0-py3.7.egg-info
### Uninstall elam-tool2 is completed!
単一のスイッチ(リーフ/スパイン)での使用方法
対話形式 (デフォルト)
elam_report_generator
を実行し、ツールの要求にしたがってそれぞれ必要なパラメータを対話形式で入力していきます。
$ elam_report_generator
On which platform are you running the script, client or apic? [client/apic]: client
APIC IP: f3a1
username: admin
password:
After this, you need to input node name or node id at which you want to execute ELAM.
Do you want to view the result of 'acidiag fnvread'? (y/N): y
# acidiag fnvread
ID Pod ID Name Serial Number IP Address Role State LastUpdMsgId
--------------------------------------------------------------------------------------------------------------
103 1 fab3-leaf3 FDO21162J7H 10.0.136.65/32 leaf active 0
104 1 fab3-leaf4 FDO21162HY8 10.0.136.64/32 leaf active 0
106 1 fab3-leaf6 FDO203202BN 10.0.248.1/32 leaf active 0
107 1 fab3-leaf7 FDO203202GG 10.0.96.64/32 leaf active 0
108 1 fab3-leaf8 FDO203308DH 10.0.96.65/32 leaf active 0
109 1 fab3-leaf9 FDO211622DM 10.0.248.0/32 leaf active 0
201 1 fab3-p1-spine1 FOX1821GYQG 10.0.248.30/32 spine active 0
1105 1 fab3-leaf5 FDO20340CEG 10.0.136.66/32 leaf active 0
2101 2 fab3-p2-leaf1 FDO211506NJ 20.0.96.64/32 leaf active 0
2102 2 fab3-p2-leaf2 FDO21141MY3 20.0.56.64/32 leaf active 0
2201 2 fab3-p2-spine1 FDO2218068B 20.0.248.0/32 spine active 0
Total 11 nodes
Enter node name or node id at which you want to execute ELAM: 103
Node name is fab3-leaf3
Node role is leaf
Choose the packet from 1: Access Port or 2: Fabric Port (1|2): 1
in-select chosen is 6
If it is gen1 switch, direction option is chosen as ingress
ARP パケットをキャプチャする場合は、ターゲット IP、ソース IP、ターゲット MAC、ソース MAC アドレスなどのパラメータが設定できます。
Do you want to capture a ARP packet? (y/n): y
Enter destination IP address: 192.168.22.1
Destination IP is 192.168.22.1
Enter source IP address: 192.168.21.1
Source IP is 192.168.21.1
ARP パケット以外の場合は、キャプチャするパケットのフィルタとして 1:ip、2:L2、3:L4 の中から 1 つ以上を選択できます。
以下の例ではすべて(1,2,3)が選択されているため、L2 - L4 の各レイヤでパラメータを設定することができます。
Do you want to capture a ARP packet? (y/n): n
Choose filter protocol type from following options by entering a number of [1|2|3].
Multiple protocols can be chosen by entering a comma separated list of numbers.
If none of them is chosen (in case of only pressing "Enter" key), no filter will be applied to ELAM. It means any packet will be captured.
1: ip
2: l2
3: l4
: 1,2,3
Enter destination IPv4 or IPv6 address: 192.168.22.1
Destination IPv4 is 192.168.22.1
Enter source IPv4 or IPv6 address:
Enter destination MAC address (use xxxx.xxxx.xxxx format):
Enter source MAC address (use xxxx.xxxx.xxxx format): 0035.1aef.cbb7
Source MAC is 0035.1aef.cbb7
Enter destination port: 22
Destination port is 22
Enter source port:
入力したパラメータを含む json ファイルを保存するかどうかの選択が終わると、elam プロセスが開始します。
(以下で "y"(json ファイルを保存する)を選択した場合は、ユーザが設定したパラメータを含む json ファイルが作成され、次回以降も使用することができます。詳細については次の章で説明します。)
Do you want to create a json file locally to store the ELAM parameters you entered (y|N): y
Enter the json filename you want to create: node-103_test.json
apic login
switch fab3-leaf3 login
Identified as box-type switch
[fab3-leaf3:LC1:ASIC0] debug platform internal tah elam asic0
[fab3-leaf3:LC1:ASIC0] trigger init in-select 6 out-select 1
[fab3-leaf3:LC1:ASIC0] ELAM trigger is successfully reset.
[fab3-leaf3:LC1:ASIC0] set outer l2 src_mac 0035.1aef.cbb7
[fab3-leaf3:LC1:ASIC0] set outer ipv4 dst_ip 192.168.22.1
[fab3-leaf3:LC1:ASIC0] set outer l4 dst-port 22
[fab3-leaf3:LC1:ASIC0] Now ELAM is started on LC1 ASIC0!!!!
Saved ELAM parameters to json file node-103_test.json
[fab3-leaf3:LC1:ASIC0] Packet is not captured yet, continue...
[fab3-leaf3:LC1:ASIC0] Packet is not captured yet, continue...
[fab3-leaf3:LC1:ASIC0] ELAM STATUS: ELAM STATUS, ===========, Asic 0 Slice 0 Status Armed, Asic 0 Slice 1 Status Triggered
[fab3-leaf3:LC1:ASIC0] ELAM capture is successfully done!
[fab3-leaf3:LC1:ASIC0] Downloading ELAM report. . .
[fab3-leaf3:LC1:ASIC0] report type: ereport
[fab3-leaf3:LC1:ASIC0] ELAM GENERATION Completed!
The script completed to generate ELAM report !!!!!!!!
elam は、Python のマルチプロセッシング技術を使用して、各 LC の各 ASIC 上で並行して実行されます。(例:それぞれが 4 つの ASIC を持つ LC を 2 枚搭載したモジュラ型スパインスイッチに対してツールを実行すると、2 x 4 = 8 のプロセスが同時に実行されます。) すべての ASIC で elam のステータスが Armed である間ツールは続行され、定期的に elam のステータスをチェックします。少なくとも 1 つの ASIC でステータスが Triggered になると、elam レポートを収集し(サポートされている場合は ereport を使用)、カレントディレクトリ配下の elam_report ディレクトリ配下にファイルとして保存します。もし Armed ステータスの ASIC のプロセスが残っていればそれらは自動的に終了します。ファイル名は elam_report で始まり、ノード名、LC の番号、ASIC の番号、および収集時のタイムスタンプを含みます。
$ ls elam_report/
elam_report_fab3-leaf3_LC1_ASIC0_2022-04-20T21-02-53.txt
$ head -50 elam_report/elam_report_fab3-leaf3_LC1_ASIC0_2022-04-20T21-02-53.txt
ELAM REPORT
======================================================================================================================================================
Trigger/Basic Information
======================================================================================================================================================
ELAM Report File : /tmp/logs/elam_2022-04-20-02m-12h-50s.txt
In-Select Trigger : Outerl2-outerl3-outerl4( 6 )
Out-Select Trigger : Pktrw-sideband-drpvec( 1 )
ELAM Captured Device : LEAF
Packet Direction : ingress
Triggered ASIC type : Sugarbowl
Triggered ASIC instance : 0
Triggered Slice : 1
Incoming Interface : 0x20( 0x20 )
( Slice Source ID(Ss) in "show plat int hal l2 port gpd" )
======================================================================================================================================================
Captured Packet
======================================================================================================================================================
------------------------------------------------------------------------------------------------------------------------------------------------------
Outer Packet Attributes
------------------------------------------------------------------------------------------------------------------------------------------------------
Outer Packet Attributes : l2uc ipv4 ip ipuc ipv4uc tcp
Opcode : OPCODE_UC
------------------------------------------------------------------------------------------------------------------------------------------------------
Outer L2 Header
------------------------------------------------------------------------------------------------------------------------------------------------------
Destination MAC : 0022.BDF8.19FF
Source MAC : 0035.1AEF.CBB7
802.1Q tag is valid : yes( 0x1 )
CoS : 0( 0x0 )
Access Encap VLAN : 2001( 0x7D1 )
------------------------------------------------------------------------------------------------------------------------------------------------------
Outer L3 Header
------------------------------------------------------------------------------------------------------------------------------------------------------
L3 Type : IPv4
IP Version : 4
DSCP : 0
IP Packet Length : 60 ( = IP header(28 bytes) + IP payload )
Don't Fragment Bit : not set
TTL : 64
IP Protocol Number : TCP
IP CheckSum : 15644( 0x3D1C )
Destination IP : 192.168.22.1
Source IP : 192.168.21.1
------------------------------------------------------------------------------------------------------------------------------------------------------
Outer L4 Header
------------------------------------------------------------------------------------------------------------------------------------------------------
L4 Type : TCP
Source Port : 58715( 0xE55B )
Destination Port : 22( 0x16 )
TCP/UDP CheckSum : 0xDF96( 0xDF96 )
以下のように、elam_report_generator コマンドの引数として、APIC にログインするためのユーザ名とパスワード、ツールを実行する場所(client(クライアント) または apic)、およびクライアント上で実行する場合にアクセスする APIC の IP アドレス/ホスト名を指定できます。これらのオプションは、同じ ACI ファブリックに対してツールを複数回実行する場合にも有効です。
$ elam_report_generator --username admin --password XXXXX --run-at client --apic f3a1
After this, you need to input node name or node id at which you want to execute ELAM.
Do you want to view the result of 'acidiag fnvread'? (y/N):
Enter node name or node id at which you want to execute ELAM: fab3-leaf3
Node name is fab3-leaf3
Node role is leaf
Choose the packet from 1: Access Port or 2: Fabric Port (1|2):
コマンドのすべてのオプションとその詳細は、以下のように--help
オプションで確認することができます。
$ elam_report_generator --help
Usage:
-U, --username username used to login to apic
-P, --password password used along with username to login to apic
-R, --run-at specify where you are running this ELAM command tool. on 'apic' or 'client'
--apic if you run the tool on client, specify apic's IP address at which(its Fabric) you want to take ELAM
-J, --json-file if you are familiar with ELAM parameters, you can specify a json file by which advanced options of ELAM can be used
you can find some example at https://github.com/tskanai1/elam-tool2/tree/main/trigger_json
-T, --timeout specify the time to wait packet to be captured before the tool stops running
-D, --dump-json specify filename if you want to create a json file to store entered ELAM parameters
-N, --no-assist disable displaying acidiag fnvread, node name check and auto detection of switch role.
json ファイルの使用(同じパラメータを繰り返し入力する手間を省く)
場合によっては同じ elam パラメータを使用して単一のパケットフローに対して何度も elam レポートを収集する場合がありますが、同じパラメータを何度も手動で入力することはとても効率が悪いです。それを解決するために、このツールではツール実行時に対話形式で設定した elam パラメータを含む json ファイルをダンプすることができます。以下の json ファイルは、上記の例で作成されたものです。
$ cat node-103_test.json
{"node-name": "fab3-leaf3", "role": "leaf", "in-select": "6", "out-select": "1", "direction": "ingress", "trigger": {"arp": "no", "ip_version": "4", "children": [{"arp": {"source-ip-addr": "", "source-mac-addr": "", "target-ip-addr": "", "target-mac-addr": ""}, "ipv4": {"dst_ip": "192.168.22.1", "next-protocol": "", "src_ip": ""}, "ipv6": {"dst_ip": "", "src_ip": ""}, "l2": {"dst_mac": "", "src_mac": "0035.1aef.cbb7"}, "l4": {"dst-port": "22", "src-port": ""}}]}}
この json ファイルは、ツールを再度実行するときに-J
または--json-file
オプションで指定することができます。json ファイルと上記のオプションを使用すると、大幅に時間を節約できます!以下は、json ファイルとログインオプションを使用したときの出力例です。このモードでは、パラメータを入力する必要がありません。
$ elam_report_generator --username admin --password XXXXX --run-at client --apic f3a1 --json-file node-103_test.json
apic login
switch fab3-leaf3 login
Identified as box-type switch
[fab3-leaf3:LC1:ASIC0] debug platform internal tah elam asic0
[fab3-leaf3:LC1:ASIC0] trigger init in-select 6 out-select 1
[fab3-leaf3:LC1:ASIC0] ELAM trigger is successfully reset.
[fab3-leaf3:LC1:ASIC0] set outer l2 src_mac 0035.1aef.cbb7
[fab3-leaf3:LC1:ASIC0] set outer ipv4 dst_ip 192.168.22.1
[fab3-leaf3:LC1:ASIC0] set outer l4 dst-port 22
[fab3-leaf3:LC1:ASIC0] Now ELAM is started on LC1 ASIC0!!!!
[fab3-leaf3:LC1:ASIC0] Packet is not captured yet, continue...
[fab3-leaf3:LC1:ASIC0] Packet is not captured yet, continue...
[fab3-leaf3:LC1:ASIC0] Packet is not captured yet, continue...
[fab3-leaf3:LC1:ASIC0] ELAM STATUS: ELAM STATUS, ===========, Asic 0 Slice 0 Status Armed, Asic 0 Slice 1 Status Triggered
[fab3-leaf3:LC1:ASIC0] ELAM capture is successfully done!
[fab3-leaf3:LC1:ASIC0] Downloading ELAM report. . .
[fab3-leaf3:LC1:ASIC0] report type: ereport
[fab3-leaf3:LC1:ASIC0] ELAM GENERATION Completed!
The script completed to generate ELAM report !!!!!!!!
複数のスイッチでの使用方法
対話形式
パケットパスの各リーフ/スパインに対して上記のスクリプトを実行するだけです。
json ファイルの使用
各ノードの elam パラメータに対するオブジェクトのリストを含む json ファイルを用意すれば、複数のスイッチで elam ツールを並行して実行することができます。
以下は、fab3-leaf3 を入力リーフスイッチ、fab3-leaf8 を出力リーフスイッチとして、192.168.21.1 から 192.168.22.1 へのパケットにより elam をトリガーする json ファイルの例 です。各パラメータは環境に合わせてカスタマイズすることができます。
$ cat trigger_json/sample_for-elam_multi_dev.json
[
{
"node-name": "fab3-leaf3",
"role": "leaf",
"direction": "ingress",
"in-select": "6",
"out-select": "1",
"trigger": {
"arp": "no",
"ip_version": "4",
"children": [
{
"arp": {
"source-ip-addr": "",
"source-mac-addr": "",
"target-ip-addr": "",
"target-mac-addr": ""
},
"ipv4": {
"dst_ip": "192.168.22.1",
"next-protocol": "1",
"src_ip": "192.168.21.1"
},
"ipv6": {
"dst_ip": "",
"src_ip": ""
},
"l2": {
"dst_mac": "",
"src_mac": ""
},
"l4": {
"dst-port": "",
"src-port": ""
}
}
]
}
},
{
"node-name": "fab3-leaf8",
"role": "leaf",
"direction": "egress",
"in-select": "7",
"out-select": "1",
"trigger": {
"arp": "no",
"ip_version": "4",
"children": [
{
"arp": {
"source-ip-addr": "",
"source-mac-addr": "",
"target-ip-addr": "",
"target-mac-addr": ""
},
"ipv4": {
"dst_ip": "192.168.22.1",
"next-protocol": "1",
"src_ip": "192.168.21.1"
},
"ipv6": {
"dst_ip": "",
"src_ip": ""
},
"l2": {
"dst_mac": "",
"src_mac": ""
},
"l4": {
"dst-port": "",
"src-port": ""
}
}
]
}
}
]
複数のスイッチでツールを実行したい場合は、引数として json ファイルを使用して、elam_multi_dev
コマンドを使用します。elam は マルチプロセッシングを使用して各ノードで並行して実行されます。
$ elam_multi_dev trigger_json/sample_all-parameters.json
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
apic login
apic login
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
switch fab3-leaf3 login
switch fab3-leaf8 login
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
Identified as box-type switch
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
Identified as box-type switch
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf3:LC1:ASIC0] debug platform internal tah elam asic0
[fab3-leaf3:LC1:ASIC0] trigger init in-select 6 out-select 1
[fab3-leaf3:LC1:ASIC0] ELAM trigger is successfully reset.
[fab3-leaf3:LC1:ASIC0] No trigger is set for l2
[fab3-leaf3:LC1:ASIC0] set outer ipv4 dst_ip 192.168.22.1 next-protocol 1 src_ip 192.168.21.1
[fab3-leaf3:LC1:ASIC0] No trigger is set for l4
[fab3-leaf3:LC1:ASIC0] Now ELAM is started on LC1 ASIC0!!!!
[fab3-leaf3:LC1:ASIC0] Packet is not captured yet, continue...
[fab3-leaf8:LC1:ASIC0] debug platform internal tah elam asic0
[fab3-leaf8:LC1:ASIC0] trigger init in-select 7 out-select 1
[fab3-leaf8:LC1:ASIC0] ELAM trigger is successfully reset.
[fab3-leaf8:LC1:ASIC0] No trigger is set for l2
[fab3-leaf8:LC1:ASIC0] set inner ipv4 dst_ip 192.168.22.1 next-protocol 1 src_ip 192.168.21.1
[fab3-leaf8:LC1:ASIC0] No trigger is set for l4
[fab3-leaf8:LC1:ASIC0] Now ELAM is started on LC1 ASIC0!!!!
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf8:LC1:ASIC0] Packet is not captured yet, continue...
[fab3-leaf3:LC1:ASIC0] Packet is not captured yet, continue...
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf8:LC1:ASIC0] Packet is not captured yet, continue...
[fab3-leaf3:LC1:ASIC0] ELAM STATUS: ELAM STATUS, ===========, Asic 0 Slice 0 Status Armed, Asic 0 Slice 1 Status Triggered
[fab3-leaf3:LC1:ASIC0] ELAM capture is successfully done!
[fab3-leaf3:LC1:ASIC0] Downloading ELAM report. . .
[fab3-leaf3:LC1:ASIC0] report type: ereport
[fab3-leaf3] process is still alive.
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf8:LC1:ASIC0] ELAM STATUS: ELAM STATUS, ===========, Asic 0 Slice 0 Status Triggered, Asic 0 Slice 1 Status Triggered
[fab3-leaf8:LC1:ASIC0] ELAM capture is successfully done!
[fab3-leaf8:LC1:ASIC0] Downloading ELAM report. . .
[fab3-leaf8:LC1:ASIC0] report type: ereport
[fab3-leaf3:LC1:ASIC0] ELAM GENERATION Completed!
The script completed to generate ELAM report !!!!!!!!
[fab3-leaf3] process is done!
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf3] process is done!
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf3] process is done!
[fab3-leaf8] process is still alive.
(multiprocessing) There is at least one active process. Continue...
[fab3-leaf8:LC1:ASIC0] ELAM GENERATION Completed!
The script completed to generate ELAM report !!!!!!!!
[fab3-leaf3] process is done!
[fab3-leaf8] process is done!
elam_report ファイルは、単一スイッチの例と同様に、elam_report ディレクトリに保存されます。
$ ls elam_report/
elam_report_fab3-leaf3_LC1_ASIC0_2022-04-13T15-01-44.txt
elam_report_fab3-leaf8_LC1_ASIC0_2022-04-13T15-01-59.txt