Skip to content

Instantly share code, notes, and snippets.

@nmicic
Last active January 31, 2025 12:44
Show Gist options
  • Select an option

  • Save nmicic/eafd5644d0a37bab778637d4710ce0ae to your computer and use it in GitHub Desktop.

Select an option

Save nmicic/eafd5644d0a37bab778637d4710ce0ae to your computer and use it in GitHub Desktop.
Single liners for monitoring SSL DI-NET and pools:
date;cli show card table | grep "Service Function" | tr -d : | awk '{print exec="ssh card"$1"-cpu0 /usr/bin64/iftask_dump_stats -d ";print(exec);system(exec);print "===END==="}' | grep -vE '\s+0\s+0\s+0\s+0'
date;cli show card table | grep "Service Function" | tr -d : | awk '{print exec="ssh card"$1"-cpu0 /usr/bin64/iftask_dump_stats -x ";print(exec);system(exec);print "===END==="}' | grep -vE '\s+0\s+0\s+'
#!/bin/bash
###
# NOTE: This only create 7 files /tmp/pools.sh and /tmp/ssl.sh # iftask_dump_stats -x
# also /tmp/pools_nogrep.sh and /tmp/ssl_nogrep.sh # iftask_dump_stats -d
# also /tmp/dump.sh # iftask_dump_stats
# also /tmp/tailf_iftask.sh and /tmp/epdg_cli.sh
# NOTE: Files are not executed!
###
cat > /tmp/pools.sh << EOLPG
#!/bin/bash
date;date;for CARD in \$( cli show card table | grep "Service Function" | grep Active | tr -d : | awk '{print \$1}' ); do date;echo ==== card"\$CARD"-cpu0 ===;set -vx;ssh card"\$CARD"-cpu0 /usr/bin64/iftask_dump_stats -x;set +vx;done | grep -vE '\s+0\s+0\s+'
# NOTE grep -v is grep -vE '\s+0\s+0\s+' so this exclude too much!
EOLPG
cat > /tmp/pools_nogrep.sh << EOLPN
#!/bin/bash
date;for CARD in \$( cli show card table | grep "Service Function" | grep Active | tr -d : | awk '{print \$1}' ); do date;echo ==== card"\$CARD"-cpu0 ===;set -vx;ssh card"\$CARD"-cpu0 /usr/bin64/iftask_dump_stats -x;set +vx;done
EOLPN
chmod +x /tmp/pools*
ls -la /tmp/pools*
cat > /tmp/ssl.sh << EOLSG
#!/bin/bash
date;for CARD in \$( cli show card table | grep "Service Function" | grep Active | tr -d : | awk '{print \$1}' ); do date;echo ==== card"\$CARD"-cpu0 ===;set -vx;ssh card"\$CARD"-cpu0 /usr/bin64/iftask_dump_stats -d;set +vx;done | grep -vE '\s+0\s+0\s+0\s+0'
# grep is grep -vE '\s+0\s+0\s+0\s+0' so this should be better then for pools
EOLSG
cat > /tmp/ssl_nogrep.sh << EOLSN
#!/bin/bash
date;for CARD in \$( cli show card table | grep "Service Function" | grep Active | tr -d : | awk '{print \$1}' ); do date;echo ==== card"\$CARD"-cpu0 ===;set -vx;ssh card"\$CARD"-cpu0 /usr/bin64/iftask_dump_stats -d;set +vx;done
EOLSN
chmod +x /tmp/ssl*
ls -la /tmp/ssl*
cat > /tmp/dump.sh << EOLD
#!/bin/bash
date;for CARD in \$( cli show card table | grep "Service Function" | grep Active | tr -d : | awk '{print \$1}' ); do date;echo ==== card"\$CARD"-cpu0 ===;set -vx;ssh card"\$CARD"-cpu0 /usr/bin64/iftask_dump_stats;set +vx;done
EOLD
chmod +x /tmp/dump.sh
ls -la /tmp/dump.sh
cat > /tmp/tailf_iftask.sh_base64 << EOLTF
IyEvYmluL2Jhc2gKU0NSSVBUTkFNRT0idGFpbGZfaWZ0YXNrLnNoIgpDT0xMRUNU
SU9OX0RJUj0iL21udC9oZC1yYWlkL3JlY29yZHMvY29sbGVjdGlvbi8iCkRFQlVH
PTAKCm15U0xPVD1gc24tZGx1dGlsIC0tbXktc2xvdGAgCm15Q1BVPWBzbi1kbHV0
aWwgLS1teS1jcHVgCkFjdGl2ZUNGPSQoIHNuLWRsdXRpbCAtLW1hc3Rlci1zcGMt
c2xvdCApCm15Q0FSRENQVT0iY2FyZCIkbXlTTE9UIi1jcHUiJG15Q1BVCgoKCmZ1
bmN0aW9uIF9mdW5jX2Nsb3NlX2FsbF9kZXNjcmlwdG9ycyB7CmZvciBmZCBpbiAk
KGxzIC9wcm9jLyQkL2ZkKTsgZG8KICBldmFsICJleGVjICRmZD4mLSIKZG9uZQpy
ZXR1cm4gMAp9CgoKZnVuY3Rpb24gX2Z1bmNfb25seV9vbmVfc2NyaXB0X2tlZXBf
cnVubmluZyB7ClNsZWVwTWljcm9EZWxheT0iMC4iJCQKc2xlZXAgJFNsZWVwTWlj
cm9EZWxheQpwcyAtZWYgfCBncmVwICJzc2ggY2FyZCIgfCBncmVwIC12IGdyZXAg
fCBncmVwIHRhaWwgfCBncmVwIGlmdGFza19ydW4ubG9nIHwgIGF3ayAtdiBteXBp
ZD0kJCAtdiBwcGlkPSRQUElEICd7a3BpZD0kMjtpZihrcGlkIT1teXBpZCAmJiBr
cGlkIT1wcGlkKXtleGVjPSJraWxsIC05ICJrcGlkO3N5c3RlbShleGVjKX19Jwp9
CgoKZnVuY3Rpb24gX2Z1bmNfaWZ0YXNrX3RhaWxmIHsKdHJhcCAiIiBJTlQgUVVJ
VCBUU1RQIEhVUCAKREFURUZPUk1BVD0kKCBkYXRlICslWS0lbS0lZCslSDolTTol
U18lcyApCm1rZGlyIC1wICRDT0xMRUNUSU9OX0RJUgpmb3IgaSBpbiAkKCBjbGkg
c2hvdyBjYXJkIHRhYmxlIHwgZ3JlcCAiU2VydmljZSBGdW5jdGlvbiIgfCB0ciAt
ZCA6IHwgYXdrICd7cHJpbnQgJDF9JyApO2RvIApzc2ggY2FyZCIkaSItY3B1MCB0
YWlsIC1mIC92YXIvdG1wL2lmdGFza19ydW4ubG9nIC92YXIvdG1wL2lmdGFza19w
eS5sb2cgfCBhd2sgJ3sgcHJpbnQgc3RyZnRpbWUoIlslWS0lbS0lZCslSDolTTol
U18lc10iKSwgJDA7ZmZsdXNoKCk7IH0nID4gICRDT0xMRUNUSU9OX0RJUi9pZnRh
c2tfdGFpbGZfY2FyZCIkaSJfIiREQVRFRk9STUFUIi50eHQgJiBkaXNvd24gCmRv
bmUKc2xlZXAgMQpwcyAtZWYgfCBncmVwIC1pICJzc2ggY2FyZCIgfCBncmVwIC12
IGdyZXAKZWNobyBGaWxlcyB3aWxsIGJlIGluICRDT0xMRUNUSU9OX0RJUgplY2hv
IGRvbmUKfQoKCmlmIFsgJG15U0xPVCAhPSAkQWN0aXZlQ0YgXSA7IHRoZW4KZWNo
byAiUnVuIHNjcmlwdCBvbmx5IG9uIGFjdGl2ZSBDRiBjYXJkIgpleGl0OwpmaQpf
ZnVuY19vbmx5X29uZV9zY3JpcHRfa2VlcF9ydW5uaW5nICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgCl9mdW5jX2Nsb3NlX2FsbF9kZXNjcmlwdG9ycwpfZnVuY19p
ZnRhc2tfdGFpbGYKZXhpdAoK
EOLTF
openssl base64 -d -in /tmp/tailf_iftask.sh_base64 > /tmp/tailf_iftask.sh
chmod +x /tmp/tailf_iftask.sh
cat > /tmp/epdg_cli.sh_base64 << ELDEPDGCLI
IyEvYmluL2Jhc2gKU2hpZnRTZWNvbmRzPTEyMApTbGVlcEludGVydmFsPTYwMApD
T0xMRUNUSU9OX0RJUj0iL21udC9oZC1yYWlkL3JlY29yZHMvY29sbGVjdGlvbi9P
VVRQVVRzLyIKbWtkaXIgLXAgJENPTExFQ1RJT05fRElSCgp3aGlsZSBbIDEgXSA7
IGRvCkRBVEVGT1JNQVQ9JCggZGF0ZSArJVktJW0tJWQrJUg6JU06JVNfJXMgKQpP
VVRQVVRGSUxFTkFNRT0kQ09MTEVDVElPTl9ESVIvRVBER19wZXJpb2RpY19jbGlf
IiREQVRFRk9STUFUIi50eHQKY2F0IC9kZXYvbnVsbCA+ICRPVVRQVVRGSUxFTkFN
RQpzZXQgLXZ4CiggZWNobyA9PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNo
b3cgZGVtdXgtbWdyIHN0YXRpc3RpY3MgaXBzZWNkZW11eCBhbGwgICAgICAgICkg
ID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRlOyB0
aW1lIGNsaSBzaG93IGNyeXB0byBtYW5hZ2VycyBzdW1tYXJ5ICApICA+PiAkT1VU
UFVURklMRU5BTUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkg
c2hvdyBjcnlwdG8gbWFuYWdlcnMgc3VtbWFyeSBkZW11eC1zdGF0cyApICA+PiAk
T1VUUFVURklMRU5BTUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBj
bGkgc2hvdyBjcnlwdG8gbWFuYWdlcnMgc3VtbWFyeSBkaXN0cmlidXRpb24gICkg
ID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRlOyB0
aW1lIGNsaSBzaG93IGNyeXB0byBtYW5hZ2VycyBzdW1tYXJ5IG5wdS1zdGF0cyAp
ICA+PiAkT1VUUFVURklMRU5BTUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsg
dGltZSBjbGkgc2hvdyBjcnlwdG8gbWFuYWdlcnMgc3VtbWFyeSBjaGVja3BvaW50
LXN0YXRzICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAu
NTtkYXRlOyB0aW1lIGNsaSBzaG93IGNyeXB0byBtYW5hZ2VycyBzdW1tYXJ5IGRw
YXRoICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtk
YXRlOyB0aW1lIGNsaSBzaG93IGNyeXB0byBtYW5hZ2VycyBzdW1tYXJ5IGhhbmRv
ZmYtc3RhdHMgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9PT07c2xlZXAg
MC41O2RhdGU7IHRpbWUgY2xpIHNob3cgY3J5cHRvIG1hbmFnZXJzIHN1bW1hcnkg
aWtldjItc3RhdHMgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9PT07c2xl
ZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgY3J5cHRvIG1hbmFnZXJzIHN1bW1h
cnkgaWtlLXN0YXRzICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3Ns
ZWVwIDAuNTtkYXRlOyB0aW1lIGNsaSBzaG93IGNyeXB0byBtYW5hZ2VycyBzdW1t
YXJ5IHBvbGljeS1zdGF0cyApICA+PiAkT1VUUFVURklMRU5BTUUKKCBlY2hvID09
PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBjcnlwdG8gbWFuYWdlcnMg
c3VtbWFyeSB3bW4tZGF0YS1zdGF0cyApICA+PiAkT1VUUFVURklMRU5BTUUKKCBl
Y2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBlZ3RwYyBzdGF0
aXN0aWNzIGludGVyZmFjZSBlcGRnLWVncmVzcyBkZWJ1Zy1pbmZvIHZlcmJvc2Ug
ICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRl
OyB0aW1lIGNsaSBzaG93IGd0cHUgZGVidWctaW5mbyApICA+PiAkT1VUUFVURklM
RU5BTUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBn
dHB1IHN0YXRpc3RpY3MgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9PT07
c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgc2Vzc2lvbiBjb3VudGVycyBo
aXN0b3JpY2FsIGFsbCAgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9PT07
c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgc2Vzc2lvbiBkaXNjb25uZWN0
LXJlYXNvbnMgdmVyYm9zZSApICA+PiAkT1VUUFVURklMRU5BTUUKKCBlY2hvID09
PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBzZXNzaW9uIHByb2dyZXNz
ICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRl
OyB0aW1lIGNsaSBzaG93IHNlc3Npb24gc3Vic3lzdGVtIGRhdGEtaW5mbyB2ZXJi
b3NlICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtk
YXRlOyB0aW1lIGNsaSBzaG93IHN1YnNjcmliZXJzIGRhdGEtcmF0ZSBzdW1tYXJ5
ICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRl
OyB0aW1lIGNsaSBzaG93IHRhc2sgdGFibGUgKSAgPj4gJE9VVFBVVEZJTEVOQU1F
CiggZWNobyA9PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgdGFzayBy
ZXNvdXJjZXMgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9PT07c2xlZXAg
MC41O2RhdGU7IHRpbWUgY2xpIHNob3cgdGFzayBpbmZvICkgID4+ICRPVVRQVVRG
SUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRlOyB0aW1lIGNsaSBzaG93
IGNyeXB0byBwcm9jZXNzIHBlcmZvcm1hbmNlICApICA+PiAkT1VUUFVURklMRU5B
TUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBucHUg
dXRpbGl6YXRpb24gdGFibGUgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9
PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgbnB1bWdyIHV0aWxpemF0
aW9uIGluZm9ybWF0aW9uIHZlcmJvc2UgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCmZv
ciBDQVJEIGluICQoIGNsaSBzaG93IGNhcmQgdGFibGUgfCBncmVwICJTZXJ2aWNl
IEZ1bmN0aW9uIiB8IHRyIC1kIDogfCBhd2sgJ3twcmludCAkMX0nICk7ZG8gCigg
ZWNobyA9PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgc3NoIGNhcmQiJENBUkQiLWNw
dTAgL3Vzci9iaW42NC9pZnRhc2tfZHVtcF9zdGF0cyApICA+PiAkT1VUUFVURklM
RU5BTUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBj
cnlwdG8gcHJvY2VzcyBzbG90ICRDQVJEICkgID4+ICRPVVRQVVRGSUxFTkFNRQoo
IGVjaG8gPT09O3NsZWVwIDAuNTtkYXRlOyB0aW1lIGNsaSBzaG93IHN1YnNjcmli
ZXJzIGRhdGEtcmF0ZSBjYXJkLW51bSAkQ0FSRCApICA+PiAkT1VUUFVURklMRU5B
TUUKIyggZWNobyA9PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgdGFz
ayBpbmZvIGNhcmQgJENBUkQgZmFjaWxpdHkgaXBzZWNtZ3IgYWxsICkgID4+ICRP
VVRQVVRGSUxFTkFNRQojKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBj
bGkgc2hvdyB0YXNrIHJlc291cmNlcyBjYXJkICRDQVJEICBmYWNpbGl0eSBpcHNl
Y21nciBhbGwgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiMoIGVjaG8gPT09O3NsZWVw
IDAuNTtkYXRlOyB0aW1lIGNsaSBzaG93IHRhc2sgaW5mbyBjYXJkICRDQVJEIGZh
Y2lsaXR5IHNlc3NtZ3IgYWxsICkgID4+ICRPVVRQVVRGSUxFTkFNRQojKCBlY2hv
ID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyB0YXNrIHJlc291cmNl
cyBjYXJkICRDQVJEICBmYWNpbGl0eSBzZXNzbWdyIGFsbCAgKSAgPj4gJE9VVFBV
VEZJTEVOQU1FCiggZWNobyA9PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNo
b3cgdGFzayB0YWJsZSBjYXJkICRDQVJEIGZhY2lsaXR5IGlwc2VjbWdyIGFsbCB8
IGdyZXAgaXBzZWNtZ3IgfCBhd2sgJ3tpZigzNzE+JDMpe2V4ZWM9ImNsaSBzaG93
IGNyeXB0byBtYW5hZ2VycyBpbnN0YW5jZSAiJDM7cHJpbnQgZXhlYztzeXN0ZW0o
ZXhlYyl9fSc7ZGF0ZSAgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiMoIGVjaG8gPT09
O3NsZWVwIDAuNTtkYXRlOyB0aW1lIGNsaSBzaG93IHRhc2sgdGFibGUgY2FyZCAk
Q0FSRCBmYWNpbGl0eSBzZXNzbWdyICBhbGwgfCBncmVwIHNlc3NtZ3IgfCBhd2sg
J3tleGVjPSJjbGkgc2hvdyBzZXNzaW9uIGRpc2Nvbm5lY3QtcmVhc29ucyBzbWdy
LWluc3RhbmNlICIkMyIgdmVyYm9zZSI7cHJpbnQgZXhlYztzeXN0ZW0oZXhlYyl9
JztkYXRlICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAu
NTtkYXRlOyB0aW1lIGNsaSBzaG93IHRhc2sgdGFibGUgY2FyZCAkQ0FSRCBmYWNp
bGl0eSBzZXNzbWdyICBhbGwgfCBncmVwIHNlc3NtZ3IgfCBhd2sgJ3tleGVjPSJj
bGkgc2hvdyBzZXNzaW9uIHN1YnN5c3RlbSBmYWNpbGl0eSBzZXNzbWdyIGluc3Rh
bmNlICIkMztwcmludCBleGVjO3N5c3RlbShleGVjKX0nO2RhdGUgICkgID4+ICRP
VVRQVVRGSUxFTkFNRQpkb25lIApnemlwIC12ZiAkT1VUUFVURklMRU5BTUUKc2V0
ICt2eApVbml4dGltZT0kKCBkYXRlICslcyApCiMgICBzbGVlcCAkKCggJFNsZWVw
SW50ZXJ2YWwgLSAoJFVuaXh0aW1lICUgJFNsZWVwSW50ZXJ2YWwgKSArICRTaGlm
dFNlY29uZHMgKSkKVW5peHRpbWU9JCggZGF0ZSArJXMgKQpTaGlmdFNlY29uZHM9
MTIwClNsZWVwSW50ZXJ2YWw9NjAwCgpvZmZzZXQ9JCgoICRVbml4dGltZSAlICRT
bGVlcEludGVydmFsICkpCm5leHRfc2hpZnQ9JCgoICRTbGVlcEludGVydmFsIC0g
JG9mZnNldCArICRTaGlmdFNlY29uZHMgKSkKCmlmIFsgJG5leHRfc2hpZnQgLWx0
IDAgXTsgdGhlbgogICAgc2xlZXBfdGltZT0kKCggJFNsZWVwSW50ZXJ2YWwgKyAk
bmV4dF9zaGlmdCApKQplbHNlCiAgICBzbGVlcF90aW1lPSRuZXh0X3NoaWZ0CmZp
CmVjaG8gV2FpdC9TbGVlcDogIiRzbGVlcF90aW1lIiBTZWNvbmRzCnNsZWVwICRz
bGVlcF90aW1lCmRvbmUK
ELDEPDGCLI
openssl base64 -d -in /tmp/epdg_cli.sh_base64 > /tmp/epdg_cli.sh
chmod +x /tmp/epdg_cli.sh
ls -la /tmp/epdg_cli.sh
cat > /tmp/loop_dump.sh << EOLLDX
#!/bin/bash
while [ 1 ] ; do date;/tmp/dump.sh ; sleep 60;done | tee -ai /mnt/hd-raid/records/collection/iftask_dump_stats_`date +%s`.txt
EOLLDX
chmod +x /tmp/loop_dump.sh
cat > /tmp/dmesg.sh << EOLDMESG
#!/bin/bash
date;date;for CARD in \$( cli show card table | grep "Service Function" | grep Active | tr -d : | awk '{print \$1}' ); do date;echo ==== card"\$CARD"-cpu0 ===;set -vx;ssh card"\$CARD"-cpu0 dmesg;set +vx;done
EOLDMESG
chmod +x /tmp/*sh
ls -la /tmp/*sh
echo done
#!/bin/bash
SCRIPTNAME="tailf_iftask.sh"
COLLECTION_DIR="/mnt/hd-raid/records/collection/"
DEBUG=0
mySLOT=`sn-dlutil --my-slot`
myCPU=`sn-dlutil --my-cpu`
ActiveCF=$( sn-dlutil --master-spc-slot )
myCARDCPU="card"$mySLOT"-cpu"$myCPU
function _func_close_all_descriptors {
for fd in $(ls /proc/$$/fd); do
eval "exec $fd>&-"
done
return 0
}
function _func_only_one_script_keep_running {
SleepMicroDelay="0."$$
sleep $SleepMicroDelay
ps -ef | grep "ssh card" | grep -v grep | grep tail | grep iftask_run.log | awk -v mypid=$$ -v ppid=$PPID '{kpid=$2;if(kpid!=mypid && kpid!=ppid){exec="kill -9 "kpid;system(exec)}}'
}
function _func_iftask_tailf {
trap "" INT QUIT TSTP HUP
DATEFORMAT=$( date +%Y-%m-%d+%H:%M:%S_%s )
mkdir -p $COLLECTION_DIR
for i in $( cli show card table | grep "Service Function" | tr -d : | awk '{print $1}' );do
ssh card"$i"-cpu0 tail -f /var/tmp/iftask_run.log /var/tmp/iftask_py.log | awk '{ print strftime("[%Y-%m-%d+%H:%M:%S_%s]"), $0;fflush(); }' > $COLLECTION_DIR/iftask_tailf_card"$i"_"$DATEFORMAT".txt & disown
done
sleep 1
ps -ef | grep -i "ssh card" | grep -v grep
echo Files will be in $COLLECTION_DIR
echo done
}
if [ $mySLOT != $ActiveCF ] ; then
echo "Run script only on active CF card"
exit;
fi
_func_only_one_script_keep_running
_func_close_all_descriptors
_func_iftask_tailf
exit
#!/bin/bash
ShiftSeconds=120
SleepInterval=600
COLLECTION_DIR="/mnt/hd-raid/records/collection/OUTPUTs/"
mkdir -p $COLLECTION_DIR
while [ 1 ] ; do
DATEFORMAT=$( date +%Y-%m-%d+%H:%M:%S_%s )
OUTPUTFILENAME=$COLLECTION_DIR/EPDG_periodic_cli_"$DATEFORMAT".txt
cat /dev/null > $OUTPUTFILENAME
set -vx
( echo ===;sleep 0.5;date; time cli show cloud monitor di-network detail ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show demux-mgr statistics ipsecdemux all ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary demux-stats ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary distribution ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary npu-stats ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary checkpoint-stats ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary dpath ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary handoff-stats ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary ikev2-stats ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary ike-stats ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary policy-stats ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto managers summary wmn-data-stats ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show egtpc statistics interface epdg-egress debug-info verbose ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show gtpu debug-info ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show gtpu statistics ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show session counters historical all ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show session disconnect-reasons verbose ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show session progress ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show session subsystem data-info verbose ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show subscribers data-rate summary ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show task table ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show task resources ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show task info ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto process performance ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show npu utilization table ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show npumgr utilization information verbose ) >> $OUTPUTFILENAME
for CARD in $( cli show card table | grep "Service Function" | tr -d : | awk '{print $1}' );do
( echo ===;sleep 0.5;date; time ssh card"$CARD"-cpu0 /usr/bin64/iftask_dump_stats ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show crypto process slot $CARD ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show subscribers data-rate card-num $CARD ) >> $OUTPUTFILENAME
#( echo ===;sleep 0.5;date; time cli show task info card $CARD facility ipsecmgr all ) >> $OUTPUTFILENAME
#( echo ===;sleep 0.5;date; time cli show task resources card $CARD facility ipsecmgr all ) >> $OUTPUTFILENAME
#( echo ===;sleep 0.5;date; time cli show task info card $CARD facility sessmgr all ) >> $OUTPUTFILENAME
#( echo ===;sleep 0.5;date; time cli show task resources card $CARD facility sessmgr all ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show task table card $CARD facility ipsecmgr all | grep ipsecmgr | awk '{if(371>$3){exec="cli show crypto managers instance "$3;print exec;system(exec)}}';date ) >> $OUTPUTFILENAME
#( echo ===;sleep 0.5;date; time cli show task table card $CARD facility sessmgr all | grep sessmgr | awk '{exec="cli show session disconnect-reasons smgr-instance "$3" verbose";print exec;system(exec)}';date ) >> $OUTPUTFILENAME
( echo ===;sleep 0.5;date; time cli show task table card $CARD facility sessmgr all | grep sessmgr | awk '{exec="cli show session subsystem facility sessmgr instance "$3;print exec;system(exec)}';date ) >> $OUTPUTFILENAME
done
gzip -vf $OUTPUTFILENAME
set +vx
Unixtime=$( date +%s )
# sleep $(( $SleepInterval - ($Unixtime % $SleepInterval ) + $ShiftSeconds ))
Unixtime=$( date +%s )
ShiftSeconds=120
SleepInterval=600
offset=$(( $Unixtime % $SleepInterval ))
next_shift=$(( $SleepInterval - $offset + $ShiftSeconds ))
if [ $next_shift -lt 0 ]; then
sleep_time=$(( $SleepInterval + $next_shift ))
else
sleep_time=$next_shift
fi
date
echo Wait/Sleep: "$sleep_time" Seconds
sleep $sleep_time
done
while [ 1 ] ; do /tmp/dump.sh ; sleep 60;done | tee -ai /mnt/hd-raid/records/collection/iftask_dump_stats_`date +%s`.txt
for CARD in $( cli show card table | grep "Service Function" | grep Active | tr -d : | awk '{print $1}' ); do echo ==== card"$CARD"-cpu0 ===;set -vx;ssh card"$CARD"-cpu0 dmesg;set +vx;done | grep -i -e === -e iftask
TAIL=20;for CARD in $( cli show card table | grep "Service Function" | grep Active | tr -d : | awk '{print $1}');do echo === card"$CARD"-cpu0 ===; cli debug console card $CARD cpu 0 tail $TAIL only;done
#!/bin/bash
SCRIPTNAME="start.sh"
DEBUG=0
mySLOT=`sn-dlutil --my-slot`
myCPU=`sn-dlutil --my-cpu`
ActiveCF=$( sn-dlutil --master-spc-slot )
myCARDCPU="card"$mySLOT"-cpu"$myCPU
cat > /tmp/stop_dump_all.sh << EOLSTOPDUMPALL
#!/bin/bash
SCRIPTNAME="dump_all.sh"
ps -C \$SCRIPTNAME -opid,comm | grep -v \$\$ | grep \$SCRIPTNAME | grep -v PID | awk '{exec="kill -9 "\$1;print exec;system(exec)}'
EOLSTOPDUMPALL
chmod +x /tmp/stop_dump_all.sh
cat > /tmp/stop_epdg_cli.sh << EOLSTOPEPDG
#!/bin/bash
SCRIPTNAME="epdg_cli.sh"
ps -C \$SCRIPTNAME -opid,comm | grep -v \$\$ | grep \$SCRIPTNAME | grep -v PID | awk '{exec="kill -9 "\$1;print exec;system(exec)}'
EOLSTOPEPDG
chmod +x /tmp/stop_epdg_cli.sh
cat > /tmp/dump_all.sh_base64 << EOLDUMPALL
IyEvYmluL2Jhc2gKU0NSSVBUTkFNRT0iZHVtcF9hbGwuc2giCnBzIC1DICRTQ1JJ
UFROQU1FIC1vcGlkLGNvbW0gfCBncmVwIC12ICQkIHwgZ3JlcCAkU0NSSVBUTkFN
RSB8IGdyZXAgLXYgUElEIHwgYXdrICd7ZXhlYz0ia2lsbCAtOSAiJDE7cHJpbnQg
ZXhlYztzeXN0ZW0oZXhlYyl9Jwp0cmFwICIiIElOVCBRVUlUIFRTVFAgSFVQIApT
aGlmdFNlY29uZHM9MzAKU2xlZXBJbnRlcnZhbD02MAp3aGlsZSBbIDEgXSA7ZG8K
Q09MTEVDVElPTl9ESVI9Ii9tbnQvaGQtcmFpZC9yZWNvcmRzL2NvbGxlY3Rpb24v
SUZUQVNLLyIKbWtkaXIgLXAgJENPTExFQ1RJT05fRElSCllNRD0kKCBkYXRlICsl
WS0lbS0lZCApCkhPVVI9JCggZGF0ZSArJUggKQpta2RpciAtcCAiJENPTExFQ1RJ
T05fRElSIi8iJFlNRCIvIiRIT1VSIgpEQVRFRk9STUFUPSQoIGRhdGUgKyVZLSVt
LSVkKyVIOiVNOiVTXyVzICkKZm9yIENBUkQgaW4gJCggY2xpIHNob3cgY2FyZCB0
YWJsZSB8IGdyZXAgIlNlcnZpY2UgRnVuY3Rpb24iIHwgZ3JlcCBBY3RpdmUgfCB0
ciAtZCA6IHwgYXdrICd7cHJpbnQgJDF9JyApO2RvCiggZGF0ZTtlY2hvID09PSAk
Q0FSRCA9PT07c3NoIGNhcmQiJENBUkQiLWNwdTAgL3Vzci9iaW42NC9pZnRhc2tf
ZHVtcF9zdGF0cztlY2hvID09PSBFTkQgPT09O2RhdGUgKT4+ICAiJENPTExFQ1RJ
T05fRElSIi8iJFlNRCIvIiRIT1VSIi9pZnRhc2tfZHVtcF9zdGF0c19BTExfIiRE
QVRFRk9STUFUIi50eHQKZG9uZQpnemlwIC12ZiAiJENPTExFQ1RJT05fRElSIi8i
JFlNRCIvIiRIT1VSIi9pZnRhc2tfZHVtcF9zdGF0c19BTExfIiREQVRFRk9STUFU
Ii50eHQgPiYgL2Rldi9udWxsCmZpbmQgIiRDT0xMRUNUSU9OX0RJUiIgLXR5cGUg
ZiAtbXRpbWUgKzggLWRlbGV0ZQpVbml4dGltZT0kKCBkYXRlICslcyApCnNsZWVw
ICQoKCAkU2xlZXBJbnRlcnZhbCAtICgkVW5peHRpbWUgJSAkU2xlZXBJbnRlcnZh
bCApICsgJFNoaWZ0U2Vjb25kcyApKQpkb25lCg==
EOLDUMPALL
openssl base64 -d -in /tmp/dump_all.sh_base64 > /tmp/dump_all.sh
chmod +x /tmp/dump_all.sh
cat > /tmp/epdg_cli.sh_base64 << ELDEPDGCLI
IyEvYmluL2Jhc2gKU0NSSVBUTkFNRT0iZXBkZ19jbGkuc2giCnBzIC1DICRTQ1JJ
UFROQU1FIC1vcGlkLGNvbW0gfCBncmVwIC12ICQkIHwgZ3JlcCAkU0NSSVBUTkFN
RSB8IGdyZXAgLXYgUElEIHwgYXdrICd7ZXhlYz0ia2lsbCAtOSAiJDE7cHJpbnQg
ZXhlYztzeXN0ZW0oZXhlYyl9Jwp0cmFwICIiIElOVCBRVUlUIFRTVFAgSFVQIApT
aGlmdFNlY29uZHM9MTIwClNsZWVwSW50ZXJ2YWw9NjAwCkNPTExFQ1RJT05fRElS
PSIvbW50L2hkLXJhaWQvcmVjb3Jkcy9jb2xsZWN0aW9uL0VQREdfQ0xJLyIKbWtk
aXIgLXAgJENPTExFQ1RJT05fRElSCgp3aGlsZSBbIDEgXSA7IGRvCm1rZGlyIC1w
ICRDT0xMRUNUSU9OX0RJUiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IApZTUQ9JCggZGF0ZSArJVktJW0tJWQgKSAKSE9VUj0kKCBkYXRlICslSCApICAg
ICAgICAgICAgICAgICAgICAgICAKbWtkaXIgLXAgIiRDT0xMRUNUSU9OX0RJUiIv
IiRZTUQiLyIkSE9VUiIgIApEQVRFRk9STUFUPSQoIGRhdGUgKyVZLSVtLSVkKyVI
OiVNOiVTXyVzICkKT1VUUFVURklMRU5BTUU9IiRDT0xMRUNUSU9OX0RJUiIvIiRZ
TUQiLyIkSE9VUiIvRVBER19wZXJpb2RpY19jbGlfIiREQVRFRk9STUFUIi50eHQK
Y2F0IC9kZXYvbnVsbCA+ICRPVVRQVVRGSUxFTkFNRQpzZXQgLXZ4CiggZWNobyA9
PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgY2xvdWQgbW9uaXRvciBk
aS1uZXR3b3JrIGRldGFpbCkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09
O3NsZWVwIDAuNTtkYXRlOyB0aW1lIGNsaSBzaG93IGRlbXV4LW1nciBzdGF0aXN0
aWNzIGlwc2VjZGVtdXggYWxsICAgICAgICApICA+PiAkT1VUUFVURklMRU5BTUUK
KCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBjcnlwdG8g
bWFuYWdlcnMgc3VtbWFyeSAgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9
PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgY3J5cHRvIG1hbmFnZXJz
IHN1bW1hcnkgZGVtdXgtc3RhdHMgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNo
byA9PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgY3J5cHRvIG1hbmFn
ZXJzIHN1bW1hcnkgZGlzdHJpYnV0aW9uICApICA+PiAkT1VUUFVURklMRU5BTUUK
KCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBjcnlwdG8g
bWFuYWdlcnMgc3VtbWFyeSBucHUtc3RhdHMgKSAgPj4gJE9VVFBVVEZJTEVOQU1F
CiggZWNobyA9PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgY3J5cHRv
IG1hbmFnZXJzIHN1bW1hcnkgY2hlY2twb2ludC1zdGF0cyApICA+PiAkT1VUUFVU
RklMRU5BTUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hv
dyBjcnlwdG8gbWFuYWdlcnMgc3VtbWFyeSBkcGF0aCApICA+PiAkT1VUUFVURklM
RU5BTUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBj
cnlwdG8gbWFuYWdlcnMgc3VtbWFyeSBoYW5kb2ZmLXN0YXRzICkgID4+ICRPVVRQ
VVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRlOyB0aW1lIGNsaSBz
aG93IGNyeXB0byBtYW5hZ2VycyBzdW1tYXJ5IGlrZXYyLXN0YXRzICkgID4+ICRP
VVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRlOyB0aW1lIGNs
aSBzaG93IGNyeXB0byBtYW5hZ2VycyBzdW1tYXJ5IGlrZS1zdGF0cyApICA+PiAk
T1VUUFVURklMRU5BTUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBj
bGkgc2hvdyBjcnlwdG8gbWFuYWdlcnMgc3VtbWFyeSBwb2xpY3ktc3RhdHMgKSAg
Pj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9PT07c2xlZXAgMC41O2RhdGU7IHRp
bWUgY2xpIHNob3cgY3J5cHRvIG1hbmFnZXJzIHN1bW1hcnkgd21uLWRhdGEtc3Rh
dHMgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9PT07c2xlZXAgMC41O2Rh
dGU7IHRpbWUgY2xpIHNob3cgZWd0cGMgc3RhdGlzdGljcyBpbnRlcmZhY2UgZXBk
Zy1lZ3Jlc3MgZGVidWctaW5mbyB2ZXJib3NlICApICA+PiAkT1VUUFVURklMRU5B
TUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBndHB1
IGRlYnVnLWluZm8gKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9PT07c2xl
ZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgZ3RwdSBzdGF0aXN0aWNzICkgID4+
ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRlOyB0aW1l
IGNsaSBzaG93IHNlc3Npb24gY291bnRlcnMgaGlzdG9yaWNhbCBhbGwgICkgID4+
ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRlOyB0aW1l
IGNsaSBzaG93IHNlc3Npb24gZGlzY29ubmVjdC1yZWFzb25zIHZlcmJvc2UgKSAg
Pj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9PT07c2xlZXAgMC41O2RhdGU7IHRp
bWUgY2xpIHNob3cgc2Vzc2lvbiBwcm9ncmVzcyApICA+PiAkT1VUUFVURklMRU5B
TUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBzZXNz
aW9uIHN1YnN5c3RlbSBkYXRhLWluZm8gdmVyYm9zZSApICA+PiAkT1VUUFVURklM
RU5BTUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBz
dWJzY3JpYmVycyBkYXRhLXJhdGUgc3VtbWFyeSApICA+PiAkT1VUUFVURklMRU5B
TUUKKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyB0YXNr
IHRhYmxlICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAu
NTtkYXRlOyB0aW1lIGNsaSBzaG93IHRhc2sgcmVzb3VyY2VzICkgID4+ICRPVVRQ
VVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRlOyB0aW1lIGNsaSBz
aG93IHRhc2sgaW5mbyApICA+PiAkT1VUUFVURklMRU5BTUUKKCBlY2hvID09PTtz
bGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBjcnlwdG8gcHJvY2VzcyBwZXJm
b3JtYW5jZSAgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiggZWNobyA9PT07c2xlZXAg
MC41O2RhdGU7IHRpbWUgY2xpIHNob3cgbnB1IHV0aWxpemF0aW9uIHRhYmxlICkg
ID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRlOyB0
aW1lIGNsaSBzaG93IG5wdW1nciB1dGlsaXphdGlvbiBpbmZvcm1hdGlvbiB2ZXJi
b3NlICkgID4+ICRPVVRQVVRGSUxFTkFNRQpmb3IgQ0FSRCBpbiAkKCBjbGkgc2hv
dyBjYXJkIHRhYmxlIHwgZ3JlcCAiU2VydmljZSBGdW5jdGlvbiIgfCBncmVwIEFj
dGl2ZSB8IHRyIC1kIDogfCBhd2sgJ3twcmludCAkMX0nICk7ZG8gCiggZWNobyA9
PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgc3NoIGNhcmQiJENBUkQiLWNwdTAgL3Vz
ci9iaW42NC9pZnRhc2tfZHVtcF9zdGF0cyApICA+PiAkT1VUUFVURklMRU5BTUUK
KCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyBjcnlwdG8g
cHJvY2VzcyBzbG90ICRDQVJEICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8g
PT09O3NsZWVwIDAuNTtkYXRlOyB0aW1lIGNsaSBzaG93IHN1YnNjcmliZXJzIGRh
dGEtcmF0ZSBjYXJkLW51bSAkQ0FSRCApICA+PiAkT1VUUFVURklMRU5BTUUKIygg
ZWNobyA9PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgdGFzayBpbmZv
IGNhcmQgJENBUkQgZmFjaWxpdHkgaXBzZWNtZ3IgYWxsICkgID4+ICRPVVRQVVRG
SUxFTkFNRQojKCBlY2hvID09PTtzbGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hv
dyB0YXNrIHJlc291cmNlcyBjYXJkICRDQVJEICBmYWNpbGl0eSBpcHNlY21nciBh
bGwgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiMoIGVjaG8gPT09O3NsZWVwIDAuNTtk
YXRlOyB0aW1lIGNsaSBzaG93IHRhc2sgaW5mbyBjYXJkICRDQVJEIGZhY2lsaXR5
IHNlc3NtZ3IgYWxsICkgID4+ICRPVVRQVVRGSUxFTkFNRQojKCBlY2hvID09PTtz
bGVlcCAwLjU7ZGF0ZTsgdGltZSBjbGkgc2hvdyB0YXNrIHJlc291cmNlcyBjYXJk
ICRDQVJEICBmYWNpbGl0eSBzZXNzbWdyIGFsbCAgKSAgPj4gJE9VVFBVVEZJTEVO
QU1FCiggZWNobyA9PT07c2xlZXAgMC41O2RhdGU7IHRpbWUgY2xpIHNob3cgdGFz
ayB0YWJsZSBjYXJkICRDQVJEIGZhY2lsaXR5IGlwc2VjbWdyIGFsbCB8IGdyZXAg
aXBzZWNtZ3IgfCBhd2sgJ3tpZigzNzE+JDMpe2V4ZWM9ImNsaSBzaG93IGNyeXB0
byBtYW5hZ2VycyBpbnN0YW5jZSAiJDM7cHJpbnQgZXhlYztzeXN0ZW0oZXhlYyl9
fSc7ZGF0ZSAgKSAgPj4gJE9VVFBVVEZJTEVOQU1FCiMoIGVjaG8gPT09O3NsZWVw
IDAuNTtkYXRlOyB0aW1lIGNsaSBzaG93IHRhc2sgdGFibGUgY2FyZCAkQ0FSRCBm
YWNpbGl0eSBzZXNzbWdyICBhbGwgfCBncmVwIHNlc3NtZ3IgfCBhd2sgJ3tleGVj
PSJjbGkgc2hvdyBzZXNzaW9uIGRpc2Nvbm5lY3QtcmVhc29ucyBzbWdyLWluc3Rh
bmNlICIkMyIgdmVyYm9zZSI7cHJpbnQgZXhlYztzeXN0ZW0oZXhlYyl9JztkYXRl
ICkgID4+ICRPVVRQVVRGSUxFTkFNRQooIGVjaG8gPT09O3NsZWVwIDAuNTtkYXRl
OyB0aW1lIGNsaSBzaG93IHRhc2sgdGFibGUgY2FyZCAkQ0FSRCBmYWNpbGl0eSBz
ZXNzbWdyICBhbGwgfCBncmVwIHNlc3NtZ3IgfCBhd2sgJ3tleGVjPSJjbGkgc2hv
dyBzZXNzaW9uIHN1YnN5c3RlbSBmYWNpbGl0eSBzZXNzbWdyIGluc3RhbmNlICIk
MztwcmludCBleGVjO3N5c3RlbShleGVjKX0nO2RhdGUgICkgID4+ICRPVVRQVVRG
SUxFTkFNRQpkb25lIApnemlwIC12ZiAkT1VUUFVURklMRU5BTUUKc2V0ICt2eApV
bml4dGltZT0kKCBkYXRlICslcyApCiMgICBzbGVlcCAkKCggJFNsZWVwSW50ZXJ2
YWwgLSAoJFVuaXh0aW1lICUgJFNsZWVwSW50ZXJ2YWwgKSArICRTaGlmdFNlY29u
ZHMgKSkKVW5peHRpbWU9JCggZGF0ZSArJXMgKQpTaGlmdFNlY29uZHM9MTIwClNs
ZWVwSW50ZXJ2YWw9NjAwCgpvZmZzZXQ9JCgoICRVbml4dGltZSAlICRTbGVlcElu
dGVydmFsICkpCm5leHRfc2hpZnQ9JCgoICRTbGVlcEludGVydmFsIC0gJG9mZnNl
dCArICRTaGlmdFNlY29uZHMgKSkKCmlmIFsgJG5leHRfc2hpZnQgLWx0IDAgXTsg
dGhlbgogICAgc2xlZXBfdGltZT0kKCggJFNsZWVwSW50ZXJ2YWwgKyAkbmV4dF9z
aGlmdCApKQplbHNlCiAgICBzbGVlcF90aW1lPSRuZXh0X3NoaWZ0CmZpCmVjaG8g
V2FpdC9TbGVlcDogIiRzbGVlcF90aW1lIiBTZWNvbmRzCnNsZWVwICRzbGVlcF90
aW1lCmZpbmQgIiRDT0xMRUNUSU9OX0RJUiIgLXR5cGUgZiAtbXRpbWUgKzggLWRl
bGV0ZQpkb25lCgo=
ELDEPDGCLI
openssl base64 -d -in /tmp/epdg_cli.sh_base64 > /tmp/epdg_cli.sh
chmod +x /tmp/epdg_cli.sh
cat > /tmp/tailf_iftask.sh_base64 << EOLTF
IyEvYmluL2Jhc2gKU0NSSVBUTkFNRT0idGFpbGZfaWZ0YXNrLnNoIgpDT0xMRUNU
SU9OX0RJUj0iL21udC9oZC1yYWlkL3JlY29yZHMvY29sbGVjdGlvbi8iCkRFQlVH
PTAKCm15U0xPVD1gc24tZGx1dGlsIC0tbXktc2xvdGAgCm15Q1BVPWBzbi1kbHV0
aWwgLS1teS1jcHVgCkFjdGl2ZUNGPSQoIHNuLWRsdXRpbCAtLW1hc3Rlci1zcGMt
c2xvdCApCm15Q0FSRENQVT0iY2FyZCIkbXlTTE9UIi1jcHUiJG15Q1BVCgoKCmZ1
bmN0aW9uIF9mdW5jX2Nsb3NlX2FsbF9kZXNjcmlwdG9ycyB7CmZvciBmZCBpbiAk
KGxzIC9wcm9jLyQkL2ZkKTsgZG8KICBldmFsICJleGVjICRmZD4mLSIKZG9uZQpy
ZXR1cm4gMAp9CgoKZnVuY3Rpb24gX2Z1bmNfb25seV9vbmVfc2NyaXB0X2tlZXBf
cnVubmluZyB7ClNsZWVwTWljcm9EZWxheT0iMC4iJCQKc2xlZXAgJFNsZWVwTWlj
cm9EZWxheQpwcyAtZWYgfCBncmVwICJzc2ggY2FyZCIgfCBncmVwIC12IGdyZXAg
fCBncmVwIHRhaWwgfCBncmVwIGlmdGFza19ydW4ubG9nIHwgIGF3ayAtdiBteXBp
ZD0kJCAtdiBwcGlkPSRQUElEICd7a3BpZD0kMjtpZihrcGlkIT1teXBpZCAmJiBr
cGlkIT1wcGlkKXtleGVjPSJraWxsIC05ICJrcGlkO3N5c3RlbShleGVjKX19Jwp9
CgoKZnVuY3Rpb24gX2Z1bmNfaWZ0YXNrX3RhaWxmIHsKdHJhcCAiIiBJTlQgUVVJ
VCBUU1RQIEhVUCAKREFURUZPUk1BVD0kKCBkYXRlICslWS0lbS0lZCslSDolTTol
U18lcyApCm1rZGlyIC1wICRDT0xMRUNUSU9OX0RJUgpmb3IgaSBpbiAkKCBjbGkg
c2hvdyBjYXJkIHRhYmxlIHwgZ3JlcCAiU2VydmljZSBGdW5jdGlvbiIgfCB0ciAt
ZCA6IHwgYXdrICd7cHJpbnQgJDF9JyApO2RvIApzc2ggY2FyZCIkaSItY3B1MCB0
YWlsIC1mIC92YXIvdG1wL2lmdGFza19ydW4ubG9nIC92YXIvdG1wL2lmdGFza19w
eS5sb2cgfCBhd2sgJ3sgcHJpbnQgc3RyZnRpbWUoIlslWS0lbS0lZCslSDolTTol
U18lc10iKSwgJDA7ZmZsdXNoKCk7IH0nID4gICRDT0xMRUNUSU9OX0RJUi9pZnRh
c2tfdGFpbGZfY2FyZCIkaSJfIiREQVRFRk9STUFUIi50eHQgJiBkaXNvd24gCmRv
bmUKc2xlZXAgMQpwcyAtZWYgfCBncmVwIC1pICJzc2ggY2FyZCIgfCBncmVwIC12
IGdyZXAKZWNobyBGaWxlcyB3aWxsIGJlIGluICRDT0xMRUNUSU9OX0RJUgplY2hv
IGRvbmUKfQoKCmlmIFsgJG15U0xPVCAhPSAkQWN0aXZlQ0YgXSA7IHRoZW4KZWNo
byAiUnVuIHNjcmlwdCBvbmx5IG9uIGFjdGl2ZSBDRiBjYXJkIgpleGl0OwpmaQpf
ZnVuY19vbmx5X29uZV9zY3JpcHRfa2VlcF9ydW5uaW5nICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgCl9mdW5jX2Nsb3NlX2FsbF9kZXNjcmlwdG9ycwpfZnVuY19p
ZnRhc2tfdGFpbGYKZXhpdAoK
EOLTF
openssl base64 -d -in /tmp/tailf_iftask.sh_base64 > /tmp/tailf_iftask.sh
chmod +x /tmp/tailf_iftask.sh
function _func_close_all_descriptors {
for fd in $(ls /proc/$$/fd); do
eval "exec $fd>&-"
done
return 0
}
function _func_only_one_script_keep_running {
SleepMicroDelay="0."$$
sleep $SleepMicroDelay
ps -ef | grep $SCRIPTNAME | grep -v grep | awk -v mypid=$$ -v ppid=$PPID '{kpid=$2;if(kpid!=mypid && kpid!=ppid){exec="kill -9 "kpid;system(exec)}}'
}
function _func_iftask_dump {
trap "" INT QUIT TSTP HUP
/tmp/dump_all.sh >& /dev/null & disown
/tmp/epdg_cli.sh >& /dev/null & disown
/tmp/tailf_iftask.sh >& /dev/null & disown
}
if [ $mySLOT != $ActiveCF ] ; then
echo "Run script only on active CF card"
exit;
fi
_func_only_one_script_keep_running
echo "Wait, and run: ps -ef | grep -i dump_all.sh"
echo "Wait, and run: ps -ef | grep -i epdg_cli.sh"
echo "Wait, and run: ps -ef | grep -i tail"
_func_close_all_descriptors
_func_iftask_dump
exit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment