diff --git a/lic_log_new.sh b/lic_log_new.sh index 30e8786..2b2781c 100644 --- a/lic_log_new.sh +++ b/lic_log_new.sh @@ -1,10 +1,10 @@ #!/bin/bash # скрипт сбора информации о лицензии -# версия от 27/05/24 +# версия от 07/02/25 PLATFORM="";for ONE in vm dci;do test -d /opt/ispsystem/${ONE} && PLATFORM=${ONE};done test -z "${PLATFORM}" && (echo "No ISPsystem Software found" && exit) -LOGDIR="${HOME}/license-logs" && mkdir -p ${LOGDIR} +LOGDIR="${HOME}/license-logs" && rm -rf ${LOGDIR} && mkdir -p ${LOGDIR} PRMT="[$(whoami)@$(hostname -s) ]" newlog() { @@ -15,63 +15,100 @@ cmdlog() { test -z "${LOGINFO}" && return local CMD=$*;(echo "${PRMT} ${CMD}";echo;eval ${CMD};echo) >> ${LOGINFO} } - +#about host newlog hostinfo_${PLATFORM}.log cmdlog hostnamectl -cmdlog cat /etc/*release -cmdlog cat /etc/astra_version /etc/astra_license -cmdlog "${PLATFORM} --version" +#about astra +if [ -e '/etc/astra_version' ]; then + cmdlog cat /etc/*release + cmdlog cat /etc/astra_version /etc/astra_license + astra-modeswitch getname +fi + +#about host cmdlog lscpu cmdlog timedatectl cmdlog free -m cmdlog df -h --exclude tmpfs --exclude devtmpfs --exclude squashfs --exclude overlay +cmdlog lsblk +cmdlog cat /etc/fstab +cmdlog cat /etc/hosts cmdlog ip -br a cmdlog ip route + +#about docker cmdlog "docker exec -it vm_box bash -c 'printenv LICENSE_AUTH_TOKEN'" +cmdlog "docker exec -it vm_box bash -c 'env | grep -i proxy'" cmdlog docker version +cmdlog docker info +cmdlog docker system df +cmdlog docker images cmdlog docker ps cmdlog "docker inspect --format ' {{.Name}} - {{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -aq)" -cmdlog docker exec -it vm_license_1 supervisorctl status #check internet settings -cmdlog ping -c 1 google.com -cmdlog ping -c 1 license6.ispsystem.com -cmdlog ping -c 1 download.ispsystem.com +cmdlog ping -c 3 ya.ru +cmdlog ping -c 3 license6.ispsystem.com +cmdlog ping -c 3 download.ispsystem.com +cmdlog curl -k -o /dev/null https://speedtest.selectel.ru/10MB cmdlog cat /etc/resolv.conf -cmdlog "env | grep proxy" -cmdlog curl --connect-timeout 60 ifconfig.me +cmdlog "env | grep -i proxy" +cmdlog curl -s --connect-timeout 60 ifconfig.me +installer=$(which ${PLATFORM}) +cmdlog stat $installer +cmdlog md5sum $installer -#get license container name -license=$(docker ps --format '{{.Names}}' --filter name=license) +cmdlog "${PLATFORM} -v" +cmdlog "systemctl status ${PLATFORM}" + + +#about vault vault=$(docker ps --format '{{.Names}}' --filter name=vault) - -cmdlog docker exec -it $vault supervisorctl status vault_dir="${LOGDIR}/vault" && mkdir -p ${vault_dir} + +cmdlog docker exec -it ${vault} supervisorctl status +journalctl CONTAINER_NAME=${vault} > ${vault_dir}/journalctl_vault.log 2>&1 docker cp ${vault}:/var/log/. ${vault_dir} -docker exec -it ${license} curl -k -# -X GET -H "internal-auth: on" -H "service: support" -H "content-type: application/json" -o- "http://localhost:1500/vault/v4/value/license_token" >${LOGDIR}/license_info.log 2>&1 +#about license +license=$(docker ps --format '{{.Names}}' --filter name=license) +cmdlog docker exec -it ${license} supervisorctl status -TOKEN=$(docker exec -it ${license} curl -k -# -X GET -H "internal-auth: on" -H "service: support" -H "content-type: application/json" -o- "http://localhost:1500/vault/v4/value/license_token" | sed 's/{\"value\"\://' | sed 's/}//') - -curl --connect-timeout 60 -vvv -k "https://license6.ispsystem.com/lic6/check" -H "X-auth-token:$TOKEN" >> ${LOGDIR}/license_info.log 2>&1 - -docker exec -it ${license} curl -k -X GET -H "Internal-Auth: on" -o- "http://127.0.0.1:1500/license/v4/license" >> ${LOGDIR}/license_info.log 2>&1 -lic_dir="${LOGDIR}/${PLATFORM}_license_1" && mkdir -p ${lic_dir} +lic_dir="${LOGDIR}/${PLATFORM}_license_files" && mkdir -p ${lic_dir} +echo -e "\nlicense logs\n" >> ${LOGDIR}/license_info.log +${PLATFORM} license logs >> ${LOGDIR}/license_logs.log 2>&1 +${PLATFORM} license info >> ${LOGDIR}/license_info.log 2>&1 +${PLATFORM} license check >> ${LOGDIR}/license_info.log 2>&1 cp -r /opt/ispsystem/license/. ${lic_dir} -docker logs ${license} > ${lic_dir}/license_1_stdout.log 2>&1 -journalctl CONTAINER_NAME=${license} > ${lic_dir}/journalctl_license.log 2>&1 -journalctl CONTAINER_NAME=${vault} > ${vault_dir}/journalctl_vault.log 2>&1 +docker cp ${license}:/var/log/. ${lic_dir} + +echo -e "\nvault/v4/value/license_token\n" >> ${LOGDIR}/license_info.log + +docker exec -it ${license} curl --connect-timeout 60 -k -# -X GET -H "internal-auth: on" -H "service: support" -H "content-type: application/json" -o- "http://localhost:1500/vault/v4/value/license_token" >>${LOGDIR}/license_info.log 2>&1 + +TOKEN=$(docker exec -it ${license} curl -k -# -X GET -H "internal-auth: on" -H "service: support" -H "content-type: application/json" -o- "http://localhost:1500/vault/v4/value/license_token" 2>&1 | sed 's/{\"value\"\://' | sed 's/}//') + +echo -e "\ncurl https://license6.ispsystem.com/lic6/check\n" >> ${LOGDIR}/license_info.log 2>&1 +curl --connect-timeout 60 -vvv -k "https://license6.ispsystem.com/lic6/check" -H "X-auth-token:$TOKEN" >> ${LOGDIR}/license_info.log 2>&1 + +echo -e "\ncurl http://127.0.0.1:1500/license/v4/license\n" >> ${LOGDIR}/license_info.log +docker exec -it ${license} curl --connect-timeout 60 -k -X GET -H "Internal-Auth: on" -o- "http://127.0.0.1:1500/license/v4/license" >> ${LOGDIR}/license_info.log 2>&1 +echo -e "\ncurl http://127.0.0.1:1500/vm/v3/get_license\n" >> ${LOGDIR}/license_info.log +docker exec -it ${license} curl --connect-timeout 60 -k -H GET -H "Internal-Auth: on" -o- "http://127.0.0.1:1500/vm/v3/get_license" >> ${LOGDIR}/license_info.log 2>&1 +journalctl CONTAINER_NAME=${license} > ${lic_dir}/journalctl_license.log 2>&1 + +docker logs ${license} > ${lic_dir}/license_stdout.log 2>&1 cp /opt/ispsystem/${PLATFORM}/config.json ${LOGDIR} cp /opt/ispsystem/${PLATFORM}/install.log ${LOGDIR} cp /opt/ispsystem/${PLATFORM}/docker-compose.yaml ${LOGDIR} -ARCNAME=$(date +"${HOME}/${PLATFORM}_license_logs_%Y_%m_%d_%H_%M_%S.tar.gz") -tar --remove-files -cvzf ${ARCNAME} -C ${LOGDIR} . -echo -e "\nPlease send this logs archive to ISP system support\n" +ARCNAME=$(date +"${HOME}/license-logs-%Y_%m_%d_%H_%M_%S.tar.gz") +tar -cvzf ${ARCNAME} -C ${LOGDIR} . +echo -e "\nPlease send this logs archive to technical support\n" du -h ${ARCNAME}