Ejemplo n.º 1
0
def format_ticket(t):

    ggus_t = get_ggus_ticket(ticket_id(t))
    assigned_time = ggus_t.assigned_time()
    age = (datetime.now() - assigned_time).days

    warning = ""

    # if ticket_status(t) == 'on hold' and ticket_related_issue(t) is None:
    #    warning = "on hold ticket without related issue!".upper()

    template=Template("""${url} \"${desc}\"
                SU: ${su}
                Prio: ${prio}
                Age: ${age}
                Related issue: ${related}""")

    ticket_str = template.substitute({"url":ticket_url(t),
                         "desc": ticket_short_description(t),
                         "su": ticket_su(t),
                         "prio": ticket_priority(t),
                         "age": "%d days old" % age,
                         "related": None })

    if len(warning) > 0:
        ticket_str = ticket_str + "\n\t\t\tWARNING: %s" % warning

    return ticket_str
Ejemplo n.º 2
0
def print_ticket_history(ticket_list):
    for ticket_no in ticket_list:
        try:
            ticket = get_ticket(ticket_no)
        
            ggus_ticket = get_ggus_ticket(ticket_no)
            print "##########"
            print "Ticket: %s" % ticket_url(ticket)
            print "Summary: %s" % ticket_short_description(ticket)
            print "SU: %s" % ticket_su(ticket)
            print 'Last change: %s' % ticket_date_of_change(ticket)
            print "Priority: %s" % ticket_priority(ticket)
            print "Status: %s" % ticket_status(ticket)
            print
            print "Status History: "
            print
            ggus_ticket.print_status_history()
            print
            print "Priority History: "
            print
            ggus_ticket.print_priority_history()
            print
            print "SLA compliance values:"
            print
            val = ggus_ticket.get_sla_compliance_values2()
            counter = 0
            for v in val:
                
                
                if v.sla_delay:
                    sla_check_str = "Delay: %d business minutes (i.e. %d business hours, or  %d business days)" % (v.sla_delay,
                                                                                                                   v.sla_delay // 60,
                                                                                                                   v.sla_delay // 480)
                else:
                    sla_check_str = "SLA Check OK"    
                
                print "#", counter, " (%s)" % v.su, sla_check_str
                print "Priority when assigned: %s" % v.priority_when_assigned
                print "Assigned to SU %s on: %s" % (v.su, v.assigned_time)
                print "SLA constraint: %s" % sla_constraints[v.priority_when_assigned]
                print "Expected takeover: %s" % v.expected_takeover_time
                print "Actual takeover: %s" % v.out_of_assigned_time
                print "Out of assign status: %s" % v.out_of_assigned_status
                print
                counter = counter + 1
            print "##########"
            print 
            
        except WebFault:
            print >> stderr, "Error loading ticket %s" % (ticket_no)
Ejemplo n.º 3
0
        for t in su_classification[su]:
            ggus_ticket = get_ggus_ticket(ticket_id(t))
            
            if ggus_ticket.solution_time():
                time_to_solution = "%d" % ggus_ticket.solution_time().days
            else:
                time_to_solution = ""
                
            last_solution_time = ggus_ticket.last_solution_time()
            if not last_solution_time:
                last_solution_time = ""
            
            delay_in_minutes = ggus_ticket_resolution_delay(ggus_ticket)
             
            print "%s;%s;%s;%s;%s;%s;%s;%s;%s" % (su,
                                                  ticket_url(t),
                                                  ticket_status(t),
                                                  ticket_priority(t),
                                                  ticket_creation_time(t),
                                                  ggus_ticket.assigned_time(),
                                                  last_solution_time,
                                                  time_to_solution,
                                                  delay_in_minutes // 60)
    
    print
    print "CSV generation took %d seconds. " % (time.time() - start_time)                                      
        
    
def print_ksa_1_2(start_date,end_date=datetime.now()):
    print >>sys.stderr, "Producing KSA1.2 kpi csv file for period %s-%s. Please be patient..." % (format_date(start_date),format_date(end_date))