the script assumes the logs are in ./_lgs folder, the files are named as [server]-api.log. Also jq
is installed
> sh ./ql [server-short-character] [jq-query]
| #!/bin/bash | |
| declare -A servers | |
| servers["a"]="auth" | |
| servers["e"]="edge" | |
| servers["av"]="avatars" | |
| servers["ev"]="events" | |
| servers["sy"]="sync" | |
| servers["fi"]="files" | |
| _files() { | |
| file="${servers["$1"]}" | |
| if [[ "$file" != "" ]]; then | |
| echo | cat "./._lgs/${file}-api.log" | |
| else | |
| for sv in "${!servers[@]}"; do | |
| echo | cat "./._lgs/${servers[$sv]}-api.log" | |
| done | |
| fi | |
| } | |
| _q=$1 | |
| _f="" | |
| if [[ "$1" =~ ^[aesf] ]]; then | |
| _f=$1 | |
| _q=$2 | |
| fi | |
| _files $_f | jq "$_q" |