Commit b5cc53e1 authored by Zolnierczuk, Piotr's avatar Zolnierczuk, Piotr
Browse files

webserver: email on error

parent 6939e04e
Loading
Loading
Loading
Loading
+34 −10
Original line number Diff line number Diff line
@@ -4,6 +4,8 @@
Web

"""
import argparse
import traceback
import os.path
import time
import threading
@@ -15,6 +17,11 @@ import urllib2

import logging

# Import smtplib for the actual sending function
import smtplib
from   email.mime.text import MIMEText
from email.utils import  formatdate

try:
    from collections import OrderedDict
except ImportError:
@@ -52,10 +59,10 @@ HW3 = {

HW4 = {
    'Time' : 'PumpTime',
    'CryoMech1': None,
    'CryoMech2': None,
    'CryoMech3': None,
    'CryoMech4': None,
    'Pump1': None,
    'Pump2': None,
    'Pump3': None,
    'Pump4': None,
    'Keithley': None}

HW5 = {
@@ -242,7 +249,7 @@ def parse_coil(raw, key = "SC Coils/Compressors"):
        res["SC1/Temp" ] = ", ".join([ "%.2f" % float(t) for t in sc1 ])
        res["SC2/Temp" ] = ", ".join([ "%.2f" % float(t) for t in sc2 ])
    # Compressors
    comps = ['CryoMech1', 'CryoMech2', 'CryoMech3', 'CryoMech4']
    comps = ['Pump1', 'Pump2', 'Pump3', 'Pump4']
    res['Oil Temp'   ] = ""
    res['Helium Temp'] = ""
    res['Water In'   ] = ""
@@ -438,10 +445,21 @@ def log_data(filename, json, max_size_mb=1):
    fd.write(result)
    fd.close()

def send_email(fromaddr, recipients, subj, text=None, server="smtp.ornl.gov"):
        message = MIMEText(text or '')
        message['From']    = fromaddr
        message['To']      = ', '.join(recipients)
        message['Subject'] = subj
        message['Date']    = formatdate()
        
        smtp = smtplib.SMTP(server, smtplib.SMTP_PORT)
        smtp.sendmail(fromaddr, recipients, message.as_string())
        smtp.quit()


def main():
    "main function"
    import argparse


    default_dir  = "/home/nse/nse_runtime"
    default_log  = '/home/nse/nse_runtime/history.log'
@@ -450,6 +468,8 @@ def main():
    default_nweb =  12   # log update frequency (in seconds)
    default_logsize = 50 # in MB

    fromaddr = 'snsnse@ornl.gov'
    toaddrs  = ['dasneutron@gmail.com', ]

    parser = argparse.ArgumentParser(description='webstatus')
    parser.add_argument('vacation', metavar='vacaton', nargs='?', help='optional vacation message')
@@ -486,11 +506,15 @@ def main():
        except KeyboardInterrupt:
            logger.warning("keyboard interrupt")
            break
        #except Exception, _exc:
    #       logger.error("exception caught %s", _exc)
    #       print _exc
        except Exception, _exc:
            traceback.print_exc()
            # FIXME HERE (use e-mail logger to send exceptions)
            logger.error("exception caught %s (wait 10 mins)", _exc)
            send_email(fromaddr, toaddrs, 'NSE WebStatus: error', traceback.format_exc(_exc))
            time.sleep(600)
        finally:
            i = (i + 1) % args.nweb

    logger.info("bye")


+44 −43
Original line number Diff line number Diff line
Time: 1378920087  0 0      get_status: 2      mode: all
Time: 1385047403  0 0      get_status: 0      mode: all

Instrument mode: mode_standard

Power supplies:
        i00     51.872470    51.872765    -0.001373  [2]
         i1      2.470276     2.465559     7.558594  [2]
         i2      0.041753     0.034520     0.043945  [2]
         i5      2.405810     2.405854     1.142578  [2]
         i6     -0.158770    -0.149263    -0.120850  [2]
         i7      0.404616     0.406548     1.439209  [2]
         i8     -0.630136    -0.628622    -0.373535  [2]
         i9     -1.740977    -1.736562    -2.252197  [2]
        i23      1.998227     2.000000     9.777832  [2]
        i25      9.987016    10.000000     8.102417  [2]
        i26      5.424620     5.423770     0.000000  [2]
        i27      5.416380     5.423770     0.000000  [2]
        i28     26.187098    26.197146     0.000000  [2]
        i29     26.181948    26.197146     0.000000  [2]
        i31     61.886010    61.893026     0.000000  [2]
        i32      0.362963     0.362656     0.466396  [2]
        i33      0.332475     0.332474     0.363082  [2]
        i34      0.351469     0.351469     2.303421  [2]
        i00     17.296724    17.296724    -0.001373  [2]
         i1      2.904559     2.909175     9.162598  [2]
         i2      0.039555     0.040728     0.043945  [2]
         i5      1.214965     1.215046     0.582275  [2]
         i6     -0.060981    -0.061289    -0.054932  [2]
         i7      0.393080     0.396024     1.428223  [2]
         i8     -0.264251    -0.262866    -0.164795  [2]
         i9     -1.618191    -1.612124    -2.153320  [2]
        i23      1.997541     2.000000     9.942627  [2]
        i25      9.999376    10.000000     8.184814  [2]
        i26      1.808664     1.808530     0.000000  [2]
        i27      1.801798     1.808530     0.000000  [2]
        i28      8.734183     8.735313     0.000000  [2]
        i29      8.739332     8.735313     0.000000  [2]
        i31     20.625237    20.637933     0.000000  [2]
        i32      0.000000     0.560931     0.000000  [2]
        i33      0.000000     0.518255     0.000000  [2]
        i34      0.000000     0.539504     0.000000  [2]
        i39      0.000000     0.000000     0.000000  [0]
        i40      0.000000     0.000000     0.000000  [0]
        i41      0.000000     0.000000     0.000000  [0]
        i42      0.000000     0.000000     0.000000  [0]

Motors:
      mophi      4.460449     4.469394               [0]
      mopsi    -87.767029   -87.765303               [0]
      moana     -1.220921    -1.220779               [2]
      mophi      4.141846     4.104382               [0]
      mopsi    -87.948303   -87.947809               [0]
       mo_z     35.000542    35.000000               [0]
      moana     -0.801437    -0.801779               [2]
       mo_l     21.299833    21.300000               [0]

 Helium [%]          79.3  80.0 - 84.0        Valve open
 Helium [%]          83.7  80.0 - 84.0      Valve closed

  Chopper 1     Frequency         60.0         60.0
                    Phase OK      30.8     OK  30.8
                    Phase OK     237.3     OK 237.3
  Chopper 2     Frequency         60.0         60.0
                    Phase OK      90.9     OK  90.9
                    Phase OK     273.8     OK 273.8
  Chopper 3     Frequency         60.0         60.0
                    Phase OK     211.5     OK 211.5
                    Phase OK     347.1     OK 347.1
  Chopper 4     Frequency         60.0         60.0
                    Phase OK     304.5     OK 304.5
                    Phase OK      31.5     OK  31.5

Magnetic field sensors:
   b_sample      1.093750 G   0.580512 G   0.080295 G
    b_encl1      5.058232 G  -3.858145 G   0.578704 G
    b_encl2      4.211155 G   2.250434 G   0.189164 G
     b_ext1      0.266927 G  -0.029297 G  -0.560981 G
     b_ext2     -0.082104 G   0.237269 G  -0.547960 G
     b_ext3     -0.024233 G   0.050637 G  -0.157697 G
     b_ext4     -0.028935 G  -0.288990 G   0.050637 G
     b_ext5      0.268374 G  -0.062934 G   0.035807 G
   b_sample      1.107856 G   0.264395 G   0.049913 G
    b_encl1      7.023293 G  -3.583984 G   0.596427 G
    b_encl2      6.140046 G   2.059823 G   0.180845 G
     b_ext1      0.272352 G  -0.003617 G  -0.548322 G
     b_ext2     -0.083189 G   0.235460 G  -0.545790 G
     b_ext3     -0.022063 G   0.048105 G  -0.158782 G
     b_ext4     -0.026403 G  -0.286820 G   0.054615 G
     b_ext5      0.269097 G  -0.064381 G   0.037977 G

Temperature sensors:
      C1CC1         12.00 C
      C1CC2         16.20 C
      C1CC3         16.30 C
      C1SP1         15.20 C
      C2CC1         15.50 C
      C2CC2         14.70 C
      C2CC3         17.80 C
      C2SP2         14.70 C
      C1CC1         11.40 C
      C1CC2         15.10 C
      C1CC3         14.70 C
      C1SP1         18.10 C
      C2CC1         14.80 C
      C2CC2         14.20 C
      C2CC3         15.10 C
      C2SP2         17.60 C
+41 −41
Original line number Diff line number Diff line
Counter status:

       Counter started             YES
       Counter started              NO

        Sum m1 (CCard)         1023233
        Sum m2 (CCard)        29109950
     Sum anode (CCard)           26841
    Sum strobe (CCard)           25162
        Sum m1 (CCard)               0
        Sum m2 (CCard)               0
     Sum anode (CCard)               0
    Sum strobe (CCard)               0

      Sum m1 (DetCard)         1021334
      Sum m2 (DetCard)        29023148
   Sum anode (DetCard)           26792
  Sum strobe (DetCard)           25100
      Sum m1 (DetCard)               0
      Sum m2 (DetCard)               0
   Sum anode (DetCard)               0
  Sum strobe (DetCard)               0

           Strobe rate            18.0 Hz
         Proton charge        13637685
          Time elapsed          1148.4 s
                   ETA           251.6 s
                Preset          1400.0 s
           Strobe rate           658.8 Hz
         Proton charge               0
          Time elapsed               -
                   ETA               -
                Preset           300.0 s

Temperature controllers:
  T sample1     Sensor  1        0.000       77.000
                        2        0.000       77.000
  T sample2     Sensor  1        0.000       77.000
                        2        0.000       77.000
  T biooven     Sensor  1      293.940      293.150
                        2      293.150      293.150
                        3      298.150      293.150
      T SC1     Sensor  1        3.940        4.000
                        3       48.523        4.000
                        4        4.332        4.000
                        5        4.480        4.000
                        6        3.905        4.000
                        7        3.922        4.000
                        8        4.000        4.000
                        9       36.059        4.000
      T SC2     Sensor  1        4.580        4.000
                        3       48.249        4.000
                        4        4.855        4.000
                        5        4.869        4.000
                        6        4.344        4.000
                        7        4.615        4.000
                        8        4.766        4.000
                        9       35.791        4.000
  T sample1     Sensor  1        0.000        0.000
                        2        0.000        0.000
  T sample2     Sensor  1        0.000        0.000
                        2        0.000        0.000
  T biooven     Sensor  1      282.990      283.150
                        2      283.150      283.150
                        3      286.150      283.150
      T SC1     Sensor  1        4.573        4.565
                        3       49.331       48.416
                        4        4.813        4.803
                        5        4.926        4.913
                        6        4.418        4.417
                        7        4.434        4.433
                        8        4.298        4.463
                        9       36.378       36.052
      T SC2     Sensor  1        4.673        4.634
                        3       49.148       48.170
                        4        4.920        4.886
                        5        4.937        4.898
                        6        4.444        4.408
                        7        4.710        4.675
                        8        4.887        4.494
                        9       35.872       35.647
      T SC3    Not active

Sample aperture [mm]:
      Right        17.000       17.000
       Left        13.000       13.000
        Top        14.000       14.000
     Bottom        16.000       16.000
      Right        16.000       16.000
       Left        14.000       14.000
        Top        15.000       15.000
     Bottom        15.000       15.000
      Width        30.000       30.000
     Height        30.000       30.000

+20 −20
Original line number Diff line number Diff line
@@ -9,16 +9,16 @@ Status reports:
 .                          
 .                          
 .                          
Scan_active                 
 .                          
Setpoints_set               
Motion_started              
 .                          
Setpoints_reached           
Counter_started             
 .                          
 .                          
 .                          
 .                          
Counter_reset               
 .                          
 .                          
 .                          
 .                          
 .                          
@@ -28,18 +28,18 @@ Pre_macro_started
Post_macro_started          
 .                          
 .                          
Waiting                     
 .                          
 .                          
 .                          
 .                          
Setpoints_transferred       
 .                          
Corr coil temp ok           
SPS_remote
Warnings enabled
 
Scan id:     s5300
Scan status: --  9-  0-  0-  0--
Scan id:     -
Scan status: -------------------

Physics/scan parameters:

@@ -47,24 +47,24 @@ Time channels: 42
Detector pos:     21.300000     21.300000

                     Actual      Setpoint      Previous
Q [1/A] max:       0.044695      0.044784      0.000002
        min:       0.035022      0.035092
Q [1/A] max:       0.076431      0.075740      0.000002
        min:       0.050664      0.050206

tau [ns] max:    178.549345    178.550281    178.549973
         min:     85.905787     85.906238
tau [ns] max:     15.801769     15.801884     16.789445
         min:      4.602376      4.602410

Lambda [A] max:                 13.963149
           min:                 10.941363
Lambda [A] max:                  8.963149
           min:                  5.941363
 
Macros:
 TOP-LEVEL: messung_StingaciuL-9588
  previous: in
 TOP-LEVEL: -
  previous: messung_ZimeiBu-9087
 ----------
    ACTIVE: scanit_StingaciuL-9588
  previous: messung_StingaciuL-9588-CyanLight14A_293p0K
    ACTIVE: -
  previous: messung_ZimeiBu-9087-Sample3_283p15K

Primary shutter:        OPEN
Revolver position:         1
Revolver position:    CLOSED
     control mode:    REMOTE
Beam aperture:          OPEN
Beam attenuator:        OPEN
 No newline at end of file
Beam aperture:        CLOSED
Beam attenuator:      CLOSED
 No newline at end of file
+28 −25
Original line number Diff line number Diff line
Time Wed Sep 11 13:20:56 2013 
Time Thu Nov 21 10:23:15 2013 

Pump1 
Inwater Temp [F] 56.8
Outwater Temp [F] 100.8
Oil Temp [F] 108.1
Helium Temp [F] 170.1
High Pressure [PSI] 288.2
Low  Pressure [PSI] 109.1
Inwater Temp [F] 56.5
Outwater Temp [F] 100.0
Oil Temp [F] 108.9
Helium Temp [F] 170.4
High Pressure [PSI] 295.0
Low  Pressure [PSI] 116.7

Pump2 
Inwater Temp [F] 57.2
Outwater Temp [F] 96.8
Oil Temp [F] 97.2
Helium Temp [F] 148.8
High Pressure [PSI] 310.3
Low  Pressure [PSI] 103.0
Inwater Temp [F] 56.3
Outwater Temp [F] 81.0
Oil Temp [F] 85.6
Helium Temp [F] 144.9
High Pressure [PSI] 307.0
Low  Pressure [PSI] 99.7

Pump3 
Inwater Temp [F] 57.9
Outwater Temp [F] 90.9
Oil Temp [F] 100.4
Helium Temp [F] 147.9
High Pressure [PSI] 317.3
Low  Pressure [PSI] 119.0
Inwater Temp [F] 57.6
Outwater Temp [F] 89.4
Oil Temp [F] 100.0
Helium Temp [F] 148.6
High Pressure [PSI] 313.3
Low  Pressure [PSI] 113.4

Pump4 
Inwater Temp [F] 57.2
Outwater Temp [F] 95.2
Oil Temp [F] 98.6
Helium Temp [F] 157.6
High Pressure [PSI] 317.9
Low  Pressure [PSI] 117.5
Inwater Temp [F] 55.6
Outwater Temp [F] 91.4
Oil Temp [F] 101.1
Helium Temp [F] 151.7
High Pressure [PSI] 316.2
Low  Pressure [PSI] 106.8

Keithley 
AC Voltage 122.14
Loading