diff --git a/roles/hxr.monitor-cluster/files/cluster_util-condor-split.sh b/roles/hxr.monitor-cluster/files/cluster_util-condor-split.sh index e2bdd01a6..49cbb590e 100755 --- a/roles/hxr.monitor-cluster/files/cluster_util-condor-split.sh +++ b/roles/hxr.monitor-cluster/files/cluster_util-condor-split.sh @@ -14,5 +14,20 @@ for cluster in $(condor_status -autoformat GalaxyGroup | sort | grep -v undefine total_gpu_slots=$(condor_status -af Name -constraint 'GalaxyGroup == "'$cluster'" && CUDADeviceName =!= undefined' | wc -l) claimed_gpus=$(condor_status -af Name -constraint 'GalaxyGroup == "'$cluster'" && State == "Claimed" && CUDADeviceName =!= undefined' | wc -l) unclaimed_gpus=$(condor_status -af Name -constraint 'GalaxyGroup == "'$cluster'" && State == "Unclaimed" && CUDADeviceName =!= undefined' | wc -l) + + # Check if any is empty and if empty set it to 0 + if [ -z "$total_slots" ]; then total_slots=0; fi + if [ -z "$claimed_slots" ]; then claimed_slots=0; fi + if [ -z "$unclaimed_slots" ]; then unclaimed_slots=0; fi + if [ -z "$total_cpus" ]; then total_cpus=0; fi + if [ -z "$claimed_cpus" ]; then claimed_cpus=0; fi + if [ -z "$unclaimed_cpus" ]; then unclaimed_cpus=0; fi + if [ -z "$total_memory" ]; then total_memory=0; fi + if [ -z "$claimed_memory" ]; then claimed_memory=0; fi + if [ -z "$unclaimed_memory" ]; then unclaimed_memory=0; fi + if [ -z "$total_gpu_slots" ]; then total_gpu_slots=0; fi + if [ -z "$claimed_gpus" ]; then claimed_gpus=0; fi + if [ -z "$unclaimed_gpus" ]; then unclaimed_gpus=0; fi + echo "htcondor_cluster_usage,classad='cluster',group=$cluster total_slots=$total_slots,claimed_slots=$claimed_slots,unclaimed_slots=$unclaimed_slots,total_cpus=$total_cpus,claimed_cpus=$claimed_cpus,unclaimed_cpus=$unclaimed_cpus,total_memory=$total_memory,claimed_memory=$claimed_memory,unclaimed_memory=$unclaimed_memory,total_gpu_slots=$total_gpu_slots,claimed_gpus=$claimed_gpus,unclaimed_gpus=$unclaimed_gpus" done