#! /usr/bin/perl -w #+ # OSIRIS library of scripts # # NAME # showpower -- display the state of all power keywords # # SYNOPSIS # showpower # # DESCRIPTION # Show the current status of AC power to all MOSFIRE components. ## Output: # Results printed to stdout in the form of: # # ARGUMENTS # none # # OPTIONS # none # EXAMPLES # showpower # # ENVIRONMENT VARIABLES # # FILES # list of files used # # SERVERS & KEYWORDS # service = mp1s mp2s # keywords: pwstat[1-8] and pwname[1-8] # # SCRIPTS CALLED # # EXIT STATUS # 0 = normal completion # 1 = wrong number of arguments # # SEE ALSO # guiderpower # # Modification history: # 2012-mar-07 MK Original version # 2016-mar-17 jlyke Adapt for OSIRIS # 2018-jul-19 jlyke Check for server alive #----------------------------------------------------------------------- # allocate variables and arrays... my( $vname, $vstat, $key, $server ); my( $pow_kwd_name ) = "pwname"; my( $pow_kwd_stat ) = "pwstat"; my( @pow_kwds_num) = qw( 1 2 3 4 5 6 7 8 ); my( @kwd_servers ) = ("op1s", "op2s"); # declare labels to translate 0/1 into off/on... my( %label); $label{"0"} = "off"; $label{"1"} = " ON"; foreach $server (@kwd_servers) { # verify the server is running if ( system( "osirisCheckServer $server > /dev/null") == 0){ print " \n"; print "****************************************************\n"; print "Power setting for Pulizzi keyword server=$server\n"; print "Stat Keyword Description \n"; print "---- ------- -------------------------- \n"; foreach $key (@pow_kwds_num) { $vname = `show -s $server -terse $pow_kwd_name$key`; $vstat = `show -s $server -terse $pow_kwd_stat$key`; chomp($vname); chomp($vstat); print " $label{$vstat} => pwstat$key $vname \n"; } } else { print "Server $server is not running\n"; } } exit;