Ejemplo n.º 1
0
def main():
    args = parse_report_args()
    logfile_fname = args.logfile if args.logfile is not None else LOGFILE

    try:
        # Get OIM Information
        oiminfo = OIMInfo(args.verbose,
                          config=args.config,
                          logfile=logfile_fname)
        oim_probe_fqdn_dict = oiminfo.get_fqdns_for_probes()

        startdate = TODAY - datetime.timedelta(days=2)

        # Set up and send probe report
        preport = ProbeReport(config_file=args.config,
                              start=startdate,
                              statefile=args.statefile,
                              verbose=args.verbose,
                              is_test=args.is_test,
                              no_email=args.no_email,
                              logfile=logfile_fname)

        preport.run_report(oim_probe_fqdn_dict)
        print 'Probe Report Execution finished'
    except Exception as e:
        ReportUtils.runerror(args.config, e, traceback.format_exc(),
                             logfile_fname)
        sys.exit(1)

    return
def main():
    args = parse_report_args()
    logfile_fname = args.logfile if args.logfile is not None else LOGFILE

    try:
        r = TopOppUsageByFacility(config_file=args.config,
                                  start=args.start,
                                  end=args.end,
                                  template=args.template,
                                  months=args.months,
                                  is_test=args.is_test,
                                  no_email=args.no_email,
                                  verbose=args.verbose,
                                  numrank=args.numrank,
                                  logfile=logfile_fname)
        r.run_report()
        print(
            "Top Opportunistic Usage per Facility Report execution successful")

    except Exception as e:
        errstring = '{0}: Error running Top Opportunistic Usage Report. ' \
                    '{1}'.format(datetime.datetime.now(),
                                 traceback.format_exc())
        ReportUtils.runerror(args.config, e, errstring, logfile_fname)
        sys.exit(1)
Ejemplo n.º 3
0
def parse_report_args():
    """
    Specific argument parser for this report.
    :return: Namespace of parsed arguments
    """
    parser = argparse.ArgumentParser(parents=[ReportUtils.get_report_parser()])
    return parser.parse_args()
def main():
    args = ReportUtils.get_report_parser().parse_args()

    try:
        # We'll throw a few extra args in here just because
        s = SampleReport(config_file=args.config,
                         start=args.start,
                         end=args.end,
                         verbose=args.verbose,
                         is_test=args.is_test)
        s.run_report()
        print "Yay, it worked!"
        sys.exit(0)
    except Exception as e:
        ReportUtils.runerror(args.config, e, traceback.format_exc(), '/tmp/logfile.junk')
        sys.exit(1)
Ejemplo n.º 5
0
def main():
    args = ReportUtils.get_report_parser().parse_args()

    try:
        # We'll throw a few extra args in here just because
        s = SampleReport(config_file=args.config,
                         start=args.start,
                         end=args.end,
                         verbose=args.verbose,
                         is_test=args.is_test)
        s.run_report()
        print "Yay, it worked!"
        sys.exit(0)
    except Exception as e:
        ReportUtils.runerror(args.config, e, traceback.format_exc(),
                             '/tmp/logfile.junk')
        sys.exit(1)
Ejemplo n.º 6
0
def main():
    args = parse_report_args()
    logfile_fname = args.logfile if args.logfile is not None else LOGFILE

    try:
        r = OSGMonthlySitesViewReporter(config_file=args.config,
                        start=args.start,
                        end=args.end,
                        verbose=args.verbose,
                        is_test=args.is_test,
                        no_email=args.no_email,
                        logfile=logfile_fname,
                        template=args.template)
        r.run_report()
        r.logger.info("OSG Project Report executed successfully")

    except Exception as e:
        ReportUtils.runerror(args.config, e, traceback.format_exc(), args.logfile)
        sys.exit(1)
    sys.exit(0)
Ejemplo n.º 7
0
def parse_report_args():
    """
    Specific argument parser for this report.
    :return: Namespace of parsed arguments
    """
    parser = argparse.ArgumentParser(parents=[ReportUtils.get_report_parser()])
    parser.add_argument("-r", "--report-type", dest="report_type",
                        type=unicode, help="Report type (OSG, XD. or OSG-Connect")
    parser.add_argument('--nosum', dest="isSum", action='store_false',
                        help="Do not show a total line")
    return parser.parse_args()
Ejemplo n.º 8
0
def parse_report_args():
    """
    Specific argument parser for this report.
    :return: Namespace of parsed arguments
    """
    parser = argparse.ArgumentParser(parents=[ReportUtils.get_report_parser()])
    parser.add_argument("-r",
                        "--report-type",
                        dest="report_type",
                        type=str,
                        help="Report type (OSG, XD, or OSG-Connect")
    return parser.parse_args()
def main():
    args = ReportUtils.get_report_parser().parse_args()
    logfile_fname = args.logfile if args.logfile is not None else LOGFILE

    try:
        # Create an FlockingReport object, and run the report
        f = FlockingReport(config_file=args.config,
                           start=args.start,
                           end=args.end,
                           template=args.template,
                           is_test=args.is_test,
                           no_email=args.no_email,
                           verbose=args.verbose,
                           logfile=logfile_fname)

        f.run_report()
        print "OSG Flocking Report execution successful"
    except Exception as e:
        errstring = '{0}: Error running OSG Flocking Report. ' \
                    '{1}'.format(datetime.datetime.now(), traceback.format_exc())
        ReportUtils.runerror(args.config, e, errstring, logfile_fname)
        sys.exit(1)
    sys.exit(0)
Ejemplo n.º 10
0
def parse_report_args():
    """
    Specific argument parser for this report.
    :return: Namespace of parsed arguments
    """
    parser = argparse.ArgumentParser(
        parents=[ReportUtils.get_report_parser(no_time_options=True)])
    parser.add_argument("-S",
                        "--statefile",
                        dest="statefile",
                        type=str,
                        default=None,
                        help="File where report state should be kept")
    return parser.parse_args()
Ejemplo n.º 11
0
def main():
    args = ReportUtils.get_report_parser().parse_args()
    logfile_fname = args.logfile if args.logfile is not None else LOGFILE

    if args.end is not None:
        try:
            assert [d.date() for d in
                monthrange(TimeUtils.parse_datetime(args.start))] ==\
                [d.date() for d in
                monthrange(TimeUtils.parse_datetime(args.end))]
        except AssertionError:
            raise ValueError("Currently, the OSG Per Site Reporter only supports running over"\
                " a month time range (e.g. 2017-03-01 to 2017-03-31).  Please"\
                " either specify -s <start> -e <end> with both <start> and <end>"\
                " within the same month, or only specify a start time with the -s"\
                " flag.")

    start, end = monthrange(TimeUtils.parse_datetime(args.start))

    try:
        osgreport = OSGPerSiteReporter(config_file=args.config,
                                       start=start,
                                       end=end,
                                       template=args.template,
                                       verbose=args.verbose,
                                       is_test=args.is_test,
                                       no_email=args.no_email,
                                       logfile=logfile_fname)

        osgreport.run_report()
        print 'OSG Per Site Report Execution finished'
        sys.exit(0)
    except Exception as e:
        ReportUtils.runerror(args.config, e, traceback.format_exc(),
                             logfile_fname)
        sys.exit(1)
Ejemplo n.º 12
0
def main():
    args = ReportUtils.get_report_parser().parse_args()
    logfile_fname = args.logfile if args.logfile is not None else LOGFILE

    #try:
    r = MissingVOReporter(config_file=args.config,
                          start=args.start,
                          end=args.end,
                          verbose=args.verbose,
                          is_test=args.is_test,
                          no_email=args.no_email,
                          logfile=logfile_fname,
                          template=args.template)
    r.run_report()
    r.logger.info("OSG Missing VO Report executed successfully")
def parse_report_args():
    """
    Specific argument parser for this report.
    :return: Namespace of parsed arguments
    """
    parser = argparse.ArgumentParser(parents=[ReportUtils.get_report_parser()])
    parser.add_argument("-m",
                        "--months",
                        dest="months",
                        help="Number of months to run report for",
                        default=None,
                        type=int)
    parser.add_argument("-N",
                        "--numrank",
                        dest="numrank",
                        help="Number of Facilities to rank",
                        default=None,
                        type=int)
    return parser.parse_args()