Compare commits

...

9 Commits

Author SHA1 Message Date
oleg 7c34d6e918 fix 2024-08-10 23:28:07 -04:00
oleg 55782dbd44 progress 2024-08-10 23:24:46 -04:00
oleg 72c9cb2e00 progress 2024-08-09 22:54:33 -04:00
oleg a610ab5462 progress 2024-08-09 22:43:44 -04:00
oleg 969360642a debugging crypto_md_day 2024-08-08 20:51:45 -04:00
oleg 939cc0197d progress: build script 2024-08-08 18:17:00 -04:00
oleg 0766a07b79 fix 2024-08-08 13:04:16 -04:00
oleg 9874aaeac7 fix 2024-08-06 23:59:35 -04:00
oleg 6458974866 progress: storage check uses hosts from config service 2024-08-06 16:05:55 -04:00
9 changed files with 95 additions and 35 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
#!/bin/sh #!/bin/bash
usage() { usage() {
echo "Usage: ${0} <local_root_dir>" echo "Usage: ${0} <local_root_dir>"
+3 -2
View File
@@ -14,11 +14,12 @@ Cmd="docker run"
Cmd="${Cmd} --pull=always" Cmd="${Cmd} --pull=always"
Cmd="${Cmd} --network=host" Cmd="${Cmd} --network=host"
Cmd="${Cmd} --name=crypto_md_day.${host}.${date}" Cmd="${Cmd} --name=crypto_md_day.${host}.${date}"
Cmd="${Cmd} --rm" # Cmd="${Cmd} --rm"
Cmd="${Cmd} ${DockerImage}" Cmd="${Cmd} ${DockerImage}"
Cmd="${Cmd} -h ${host}" Cmd="${Cmd} -h ${host}"
Cmd="${Cmd} -d ${date}" Cmd="${Cmd} -d ${date}"
Cmd="${Cmd} -s coinbase,bnbspot,bnbfut" # Cmd="${Cmd} -s coinbase,bnbspot,bnbfut"
Cmd="${Cmd} -s coinbase,bnbspot"
echo $Cmd echo $Cmd
eval $Cmd eval $Cmd
+2
View File
@@ -0,0 +1,2 @@
ROOT_DIR=/home/cvtt/prod
ADMIN_PORT=7220
@@ -0,0 +1,20 @@
version: '3.8'
#==================================================
# Relies on the file `.env` content for varables:
# ROOT_DIR
# JUPYTER_PORT
#==================================================
services:
md_portal:
image: cloud21.cvtt.vpn:5500/md_portal:latest
network_mode: host
container_name: md_portal
restart: unless-stopped
environment:
- JUPYTER_ENABLE_LAB=yes
volumes:
- ${ROOT_DIR}/logs:/logs
ports:
- "${ADMIN_PORT}:${ADMIN_PORT}"
shm_size: "8gb"
+24
View File
@@ -0,0 +1,24 @@
#!/bin/bash
args=${*}
ImageName=md_portal
DockerRegistry=cloud21.cvtt.vpn:5500
DockerImage=${DockerRegistry}/${ImageName}
if [ -z ${date} ] ; then
date=$(date -d "yesterday" +%Y%m%d)
fi
Cmd="docker run"
Cmd="${Cmd} --rm"
Cmd="${Cmd} --pull=always"
Cmd="${Cmd} --network=host"
Cmd="${Cmd} --restart=unless-stopped"
Cmd="${Cmd} --name=${ImageName}"
Cmd="${Cmd} --volume /home/cvtt/prod/logs:/logs"
Cmd="${Cmd} ${DockerImage}"
Cmd="${Cmd} ${args}"
echo $Cmd
eval $Cmd
+1 -1
View File
@@ -1 +1 @@
1.3.4 1.4.3RC2,Release Candidate for md_portal docker
+10 -5
View File
@@ -7,7 +7,8 @@ usage() {
is_valid() { is_valid() {
local inst=$1 local inst=$1
local valid_instances=$2 shift
local valid_instances=("$@")
for valid_inst in "${valid_instances[@]}"; for valid_inst in "${valid_instances[@]}";
do do
@@ -52,17 +53,16 @@ echo "$date $host $source"
valid_hosts=('homestore' 'cloud21') valid_hosts=('homestore' 'cloud21')
if ! is_valid "${host}" "${valid_hosts[@]}" ; then if ! is_valid "${host}" "${valid_hosts[@]}" ; then
echo h echo "Host '${host}' is not valid"
usage usage
fi fi
valid_sources=('cloud21' 'cvttdata') valid_sources=('cloud21' 'cvttdata')
if ! is_valid ${source} ${valid_sources[@]} ; then if ! is_valid ${source} ${valid_sources[@]} ; then
echo s echo "Source '${source}' is not valid"
usage usage
fi fi
if [ "${host}" == "cloud21" ] ; then if [ "${host}" == "cloud21" ] ; then
SourceHost=cloud21.cvtt.vpn SourceHost=cloud21.cvtt.vpn
SourceUser=cvtt SourceUser=cvtt
@@ -77,6 +77,7 @@ fi
echo "${SourceHost} ${SourceUser} ${SourceRootDir}" echo "${SourceHost} ${SourceUser} ${SourceRootDir}"
SourceFile=$(date -d ${date} "+%Y%m%d.mktdata.db") SourceFile=$(date -d ${date} "+%Y%m%d.mktdata.db")
SourceFileZip="${SourceFile}.gz" SourceFileZip="${SourceFile}.gz"
SourceFilePath=$(date -d ${date} "+${SourceRootDir}/%Y/%m/${SourceFileZip}") SourceFilePath=$(date -d ${date} "+${SourceRootDir}/%Y/%m/${SourceFileZip}")
@@ -85,6 +86,10 @@ TargetDir="/opt/jupyter_gpu/data/crypto_md"
TargetFile=$(date -d ${date} "+%Y%m%d.mktdata.ohlcv.db") TargetFile=$(date -d ${date} "+%Y%m%d.mktdata.ohlcv.db")
TargetFilePath="${TargetDir}/${TargetFile}" TargetFilePath="${TargetDir}/${TargetFile}"
# Tables=(bnbfut_ohlcv_1min bnbspot_ohlcv_1min coinbase_ohlcv_1min)
Tables=(bnbspot_ohlcv_1min coinbase_ohlcv_1min)
echo ${SourceFile} echo ${SourceFile}
tmp_dir=$(mktemp -d) tmp_dir=$(mktemp -d)
@@ -112,7 +117,7 @@ function download_file {
rm -f ${TargetFilePath} rm -f ${TargetFilePath}
touch ${TargetFilePath} touch ${TargetFilePath}
for table in bnbfut_ohlcv_1min bnbspot_ohlcv_1min coinbase_ohlcv_1min for table in "${Tables[@]}"
do do
Cmd="sqlite3 ${tmp_dir}/${SourceFile} \".dump ${table}\" | sqlite3 ${TargetFilePath}" Cmd="sqlite3 ${tmp_dir}/${SourceFile} \".dump ${table}\" | sqlite3 ${TargetFilePath}"
echo ${Cmd} echo ${Cmd}
+7 -2
View File
@@ -127,7 +127,8 @@ if [ "${?}" != "0" ]; then
fi fi
release_version=$(cat release_version.txt) release_version=$(cat release_version.txt | awk -F',' '{print $1}')
whats_new=$(cat release_version.txt | awk -F',' '{print $2}')
echo "--------------------------------" echo "--------------------------------"
@@ -136,7 +137,7 @@ echo "Release version: ${release_version}"
confirm confirm
version_tag="v${release_version}" version_tag="v${release_version}"
version_comment="${version_tag}_${project}_${branch}_$(date +%Y%m%d)" version_comment="'${version_tag} ${project} ${branch} $(date +%Y-%m-%d)\n${whats_new}'"
cmd_arr=() cmd_arr=()
Cmd="git tag -a ${version_tag} -m ${version_comment}" Cmd="git tag -a ${version_tag} -m ${version_comment}"
@@ -178,4 +179,8 @@ do
pwd && echo ${cmd} && eval ${cmd} pwd && echo ${cmd} && eval ${cmd}
done done
echo "PROJECT ${project} **** P U L L N E W T A G S F R O M o r i g i n ****"
echo "----"
echo "(cd ${project}; git pull --tags; git pushall)"
echo "----"
echo "$0 Done ${project} ${release_version}" echo "$0 Done ${project} ${release_version}"
+27 -24
View File
@@ -1,4 +1,4 @@
#!/bin/sh #!/bin/bash
echo $0 $* | /usr/bin/ts '[%Y-%m-%d %H:%M:%S]' echo $0 $* | /usr/bin/ts '[%Y-%m-%d %H:%M:%S]'
RootDir="${HOME}/prod" RootDir="${HOME}/prod"
@@ -10,32 +10,24 @@ StatusChannel=Status-CVTT
AlertChannel=Alerts-CVTT AlertChannel=Alerts-CVTT
Sender=${RootDir}/ops/utils/send_mmost.sh Sender=${RootDir}/ops/utils/send_mmost.sh
# ----- For DEBUGGING
# Sender=cat # Sender=cat
# StatusChannel= # StatusChannel=
Hosts= get_user_hosts() {
Hosts="${Hosts} cloud11.cvtt.vpn" local User=${1}
Hosts="${Hosts} cloud15.cvtt.vpn" local Domain=${2}
Hosts="${Hosts} cloud16.cvtt.vpn"
Hosts="${Hosts} cloud17.cvtt.vpn"
Hosts="${Hosts} cloud21.cvtt.vpn"
Hosts="${Hosts} cloud22.cryptovaltrading.com"
Hosts="${Hosts} cvttdata.cvtt.vpn" Cmd="curl -s http://cloud23.cvtt.vpn:6789/admin/cvtt_hosts"
Hosts="${Hosts} cryptoval2.cvtt.vpn" Cmd="${Cmd} | ${HOME}/bin/hjson -j"
Hosts="${Hosts} cryptoval3.cvtt.vpn" Cmd="${Cmd} | jq -r"
Cmd="${Cmd} --arg domain \"${Domain}\""
Cmd="${Cmd} --arg usr \"${User}\""
Cmd="${Cmd} '.[\$domain] | to_entries[] | select(.value.users[] | contains(\$usr)) | .key'"
Hosts="${Hosts} homestore.cvtt.vpn" Cmd="${Cmd} | sed 's/\$/.${Domain}/'"
Hosts="${Hosts} nsbackup.sheynin.home" eval ${Cmd}
Hosts="${Hosts} dtvmhost.cvtt.vpn" }
Hosts="${Hosts} ops-server.cvtt.vpn"
Hosts="${Hosts} cvtt-prod-01.cvtt.vpn"
Hosts="${Hosts} cvtt-prod-02.cvtt.vpn"
Hosts="${Hosts} cvtt-prod-03.cvtt.vpn"
Metrics=()
TempFiles=
function cleanup { function cleanup {
echo Cleaing up temporary files: ${TempFiles} echo Cleaing up temporary files: ${TempFiles}
@@ -61,12 +53,14 @@ function space_alert() {
} }
function storage_check() { function storage_check() {
local Hosts=("${@}")
result_lines=() result_lines=()
declare -a SingleMeas declare -a SingleMeas
for host in ${Hosts} for host in ${Hosts[@]}
do do
echo "storage_check host=${host}" >&2
if [[ "${host}" == *"cryptovaltrading.com" ]]; then if [[ "${host}" == *"cryptovaltrading.com" ]]; then
port=7822 port=7822
else else
@@ -98,13 +92,22 @@ function storage_check() {
done done
} }
User=oleg
Metrics=()
TempFiles=
Hosts=()
for Domain in cvtt.vpn cryptovaltrading.com ; do
Hosts=("${Hosts[@]}" "$(get_user_hosts ${User} ${Domain})")
done
tmpfile=$(mktemp) tmpfile=$(mktemp)
TempFiles="${TempFiles} ${tmpfile}" TempFiles="${TempFiles} ${tmpfile}"
tmpfile2=$(mktemp) tmpfile2=$(mktemp)
TempFiles="${TempFiles} ${tmpfile2}" TempFiles="${TempFiles} ${tmpfile2}"
storage_check > ${tmpfile2} storage_check "${Hosts[@]}" > ${tmpfile2}
echo "## :card_file_box: STORAGE HEALTH CHECK" >> ${tmpfile} echo "## :card_file_box: STORAGE HEALTH CHECK" >> ${tmpfile}
echo >> ${tmpfile} echo >> ${tmpfile}