Things I find useful in alphabetical order.
- Apache2buddy - diagnostic tool.
-
Recursive grep showing hits.
grep -rnwc . -e 'OutOfMemoryError' | awk -F: '$NF+0 > 0'
-
Scan jars for specific files and return count.
ls -1 *.jar | xargs -l1 -I {} unzip -l {} | grep -e 'spring-rabbit-1.7.12.RELEASE.jar' -i -c
-
Delete files recursively
find . -type f -name '*.o' -delete
-
Column and sort
cat XXXX.txt | grep 'XXXX' | column -t | grep -v 'XXXX' | sort -k 6nr
-
Centos install
sudo curl -SsL https://download.docker.com/linux/centos/docker-ce.repo -o /etc/yum.repos.d/docker-ce.repo ; sudo yum install docker-ce -y ; sudo service docker start
-
Frequently run commands...
docker stats $(sudo docker ps | awk '{if(NR>1) print $NF}') docker exec -it XXXXX bash docker cp -a CONTAINER:SRC_PATH DEST_PATH|- docker cp -a SRC_PATH|- CONTAINER:DEST_PATH docker run \ -d --name fraud_workspace_1 \ --hostname workspace \ -v /data/workspace:/data \ --dns 127.0.0.1 \ --dns XXXX \ --restart always \ --link fraud_consul_1:consul \ -p 20130:20130 \ -p 20131:20131 \ -e CONSUL_PORT_8500_TCP_ADDR=consul \ -e CONSUL_PORT_8500_TCP_PORT=8500 \ -e DISABLE_CONSUL_AGENT=true \ XXXX/fraud/svi-visual-investigator:6.3.9-SNAPSHOT
-
Prettier git output.
alias gog="git log --abbrev-commit --name-status --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset'" alias gml="git log --stat --color --decorate --all --oneline" alias gdw="git diff --word-diff=color" alias ccat="source-highlight --out-format=esc256 -o STDOUT -i"
-
Remote debug to cloud foundry spring boot app instances.
cf set-env XXXX JAVA_OPTS '-agentlib:jdwp=transport=dt_socket,server=n,address=XXXX:700${CF_INSTANCE_INDEX},suspend=n'
- Cheatsheet
- Cheatsheet
- RKE - easy cluster deployment.
-
Inject latency to align with the target environment's measured network.
[root@XXXX default]# ping -qc1 XXXX 2>&1 | awk -F'/' 'END{ print (/^rtt/? "OK "$5" ms":"FAIL") }' OK 1.268 ms [root@XXXX default]# tc qdisc add dev eth0 root netem delay 10ms [root@XXXX default]# ping -qc1 XXXX 2>&1 | awk -F'/' 'END{ print (/^rtt/? "OK "$5" ms":"FAIL") }' OK 11.634 ms [root@XXXX default]# tc qdisc del dev eth0 root netem [root@XXXX default]# ping -qc1 XXXX 2>&1 | awk -F'/' 'END{ print (/^rtt/? "OK "$5" ms":"FAIL") }' OK 1.341 ms ```bash
-
Pg_stat_statements - sql query metrics
CREATE EXTENSION pg_stat_statements; SELECT * FROM pg_available_extensions WHERE name = 'pg_stat_statements' and installed_version is not null; # postgresql.conf shared_preload_libraries = 'pg_stat_statements' pg_stat_statements.max = 10000 pg_stat_statements.track = all restart
-
Logs
## tail the latest app log... cd /var/log/sas/viya/svi-datahub/default ls -1t | head -n1 | xargs tail -f
-
Sas-bootstrap-config
## Get consul token sudo cat /opt/sas/viya/config/etc/SASSecurityCertificateFramework/tokens/consul/default/management.token ## Get sanitized KV recursively source /opt/sas/viya/config/consul.conf; /opt/sas/viya/home/bin/sas-bootstrap-config --token-file /opt/sas/viya/config/etc/SASSecurityCertificateFramework/tokens/consul/default/client.token kv read --recurse config/ | grep -Evi 'username|password|host|secret|jdbc' ## Examples for write and delete. the 'source' part is duplicated for cut and paste reasons [root@XXXX ~]# source /opt/sas/viya/config/consul.conf; /opt/sas/viya/home/bin/sas-bootstrap-config --token-file /opt/sas/viya/config/etc/SASSecurityCertificateFramework/tokens/consul/default/client.token kv write --force -- "config/${applicationArray[$i]}/jvm/java_option_glowroot_$j" "${propertyArray[$j]}" [root@XXXX ~]# source /opt/sas/viya/config/consul.conf; /opt/sas/viya/home/bin/sas-bootstrap-config --token-file /opt/sas/viya/config/etc/SASSecurityCertificateFramework/tokens/consul/default/client.token kv delete -- "config/${applicationArray[$i]}/jvm/java_option_glowroot_$j"