bdambola / BD

Collection of scripts and misc info
0 stars 0 forks source link

Alert based script to verify a successful handshake with an external vendor #2

Open bdambola opened 8 years ago

bdambola commented 8 years ago

This is an alert based script written in python that verifies a successful TCP connection between a quote and trade application reporting to OPRA. The script queries the application log file to confirm successfully TCP connections to OPRA's input lines. It is run via a scheduler and the results are emailed out to internal recipients.

bdambola commented 8 years ago
# Import required modules here:
import os
import datetime
import commands

#creating date variables
prevday = datetime.date.today()-datetime.timedelta(1)
today = datetime.date.today()
monday = datetime.date.today()-datetime.timedelta(3)

def verify_sod_messages(search_string, line_number, directory):

#Searching for OQTR log file
    dir_content = os.listdir(directory) 
    result = False
    for filename in dir_content:
#defining full path + file and opening it
        for line in (open(directory + "/" + filename)):
#stripping out junk characters
            line = line.rstrip ()
#Searching file for SOD message
            if search_string in line:
                result = True
    sod = result
    #reporting results
    sodmessages = open('D:\ise\log\sod_' + today.strftime('%m%d') + '.log' , 'a')
    if sod:
        print >>sodmessages,' SOD messages from OPRA received on Mercury ' + line_number
        sodmessages.close()
        print ("\n")
    else:
        print  >>sodmessages,' !ALERT! SOD messages from OPRA were not received on Mercury ' + line_number
        print ("\n")

line1 = verify_sod_messages( '[Line 1 XXX] Control message received from OPRA: StartOfDay','Line1','D:\ise\log')
line2 = verify_sod_messages( '[Line 2 XXX] Control message received from OPRA: StartOfDay','Line2','D:\ise\log')
line3 = verify_sod_messages( '[Line 3 XXX] Control message received from OPRA: StartOfDay','Line3','D:\ise\log')
line4 = verify_sod_messages( '[Line 4 XXX] Control message received from OPRA: StartOfDay','Line4','D:\ise\log')
line5 = verify_sod_messages( '[Line 5 XXX] Control message received from OPRA: StartOfDay','Line5','D:\ise\log')
line6 = verify_sod_messages( '[Line 6 XXX] Control message received from OPRA: StartOfDay','Line6','D:\ise\log')
line7 = verify_sod_messages( '[Line 7 XXX] Control message received from OPRA: StartOfDay','Line7','D:\ise\log')
line8 = verify_sod_messages( '[Line 8 XXX] Control message received from OPRA: StartOfDay','Line8','D:\ise\log')
line9 = verify_sod_messages( '[Line 9 XXX] Control message received from OPRA: StartOfDay','Line9','D:\ise\log')
line10 = verify_sod_messages(' [Line 10 XXX] Control message received from OPRA: StartOfDay','Line10','D:\ise\log')
line11 = verify_sod_messages( ' [Line 11 XXX] Control message received from OPRA: StartOfDay','Line11','D:\ise\log')
line12 = verify_sod_messages( '[Line 12 XXX] Control message received from OPRA: StartOfDay','Line12','D:\ise\log')

Where XXX is line IP (removed for security purposes)