def logger(node=None): ''' ''' data = request.get_json() log_type = data['log_type'] debug = current_app.config['DEBUG'] if debug: current_app.logger.debug(json.dumps(data, indent=2)) if log_type == 'status': log_tee.handle_status(data, host_identifier=node.host_identifier) for item in data.get('data', []): status_log = StatusLog(node=node, **item) db.session.add(status_log) else: db.session.commit() elif log_type == 'result': log_tee.handle_result(data, host_identifier=node.host_identifier) analyze_result.delay(data, node.to_dict()) db.session.bulk_save_objects(process_result(data, node)) db.session.commit() else: current_app.logger.error("Unknown log_type %r", log_type) current_app.logger.info(json.dumps(data)) return jsonify(node_invalid=False)
def logger(node=None): ''' ''' data = request.get_json() log_type = data['log_type'] log_level = current_app.config['DOORMAN_MINIMUM_OSQUERY_LOG_LEVEL'] if current_app.debug: current_app.logger.debug(json.dumps(data, indent=2)) if log_type == 'status': log_tee.handle_status(data, host_identifier=node.host_identifier) status_logs = [] for item in data.get('data', []): if int(item['severity']) < log_level: continue status_logs.append(StatusLog(node_id=node.id, **item)) else: db.session.add(node) db.session.bulk_save_objects(status_logs) db.session.commit() elif log_type == 'result': db.session.add(node) db.session.bulk_save_objects(process_result(data, node)) db.session.commit() log_tee.handle_result(data, host_identifier=node.host_identifier) analyze_result.delay(data, node.to_dict()) else: current_app.logger.error("%s - Unknown log_type %r", request.remote_addr, log_type ) current_app.logger.info(json.dumps(data)) # still need to write last_checkin, last_ip db.session.add(node) db.session.commit() return jsonify(node_invalid=False)
def logger(node=None): ''' ''' data = request.get_json() log_type = data['log_type'] log_level = current_app.config['DOORMAN_MINIMUM_OSQUERY_LOG_LEVEL'] if current_app.debug: current_app.logger.debug(json.dumps(data, indent=2)) if log_type == 'status': log_tee.handle_status(data, host_identifier=node.host_identifier) status_logs = [] for item in data.get('data', []): if int(item['severity']) < log_level: continue status_logs.append(StatusLog(node_id=node.id, **item)) else: db.session.add(node) db.session.bulk_save_objects(status_logs) db.session.commit() elif log_type == 'result': db.session.add(node) db.session.bulk_save_objects(process_result(data, node)) db.session.commit() log_tee.handle_result(data, host_identifier=node.host_identifier) analyze_result.delay(data, node.to_dict()) else: current_app.logger.error("%s - Unknown log_type %r", request.remote_addr, log_type) current_app.logger.info(json.dumps(data)) # still need to write last_checkin, last_ip db.session.add(node) db.session.commit() return jsonify(node_invalid=False)