예제 #1
0
def create_histogram(parent_filename):
    database = MongoOperations(
        collection_database_url(os.environ[DATABASE_URL],
                                os.environ[DATABASE_REPLICA_SET]),
        os.environ[DATABASE_PORT],
        os.environ[DATABASE_NAME],
    )

    request_validator = HistogramRequestValidator(database)

    try:
        request_validator.histogram_filename_validator(
            request.json[HISTOGRAM_FILENAME_NAME])
    except Exception as invalid_histogram_filename:
        return (
            jsonify({
                MESSAGE_RESULT:
                invalid_histogram_filename.args[FIRST_ARGUMENT]
            }),
            HTTP_STATUS_CODE_CONFLICT,
        )

    try:
        request_validator.filename_validator(parent_filename)
    except Exception as invalid_filename:
        return (
            jsonify({MESSAGE_RESULT: invalid_filename.args[FIRST_ARGUMENT]}),
            HTTP_STATUS_CODE_NOT_ACCEPTABLE,
        )

    try:
        request_validator.fields_validator(parent_filename,
                                           request.json[FIELDS_NAME])
    except Exception as invalid_fields:
        return (
            jsonify({MESSAGE_RESULT: invalid_fields.args[FIRST_ARGUMENT]}),
            HTTP_STATUS_CODE_NOT_ACCEPTABLE,
        )

    histogram = Histogram(database)
    histogram.create_histogram(
        parent_filename,
        request.json[HISTOGRAM_FILENAME_NAME],
        request.json[FIELDS_NAME],
    )

    return (
        jsonify({MESSAGE_RESULT: MESSAGE_CREATED_FILE}),
        HTTP_STATUS_CODE_SUCESS_CREATED,
    )
예제 #2
0
파일: lmap.py 프로젝트: Lorenzzz90/lmap
def reports(scanner):
    if args.excel:
        rp = ReportCreator(scanner.get_report_list(), dirs['reports'])
        rp.excel_report()
    if args.graph:
        try:
            from graphcreator import ToGraph
            graph = ToGraph(scanner.get_report_list())
            graph.write_graph()
        except ImportError as exc:
            logger.exception(exc)
            print(
                "You need graph-tool installed to draw a graph, please visit https://graph-tool.skewed.de/"
            )
    if args.histogram:
        ist = Histogram(scanner.get_report_list())
        ist.create_histogram()