in src/worker/exporters/nvidia_exporter.py [0:0]
def parse_dcgm_cli():
parser = dcgm_client_cli_parser.create_parser(
name='prometheus',
field_ids=DCGM_FIELDS,
interval=1,
publish_port=8000,
log_level='INFO',
)
args = dcgm_client_cli_parser.run_parser(parser)
# add profiling metrics if flag enabled
if (dcgm_config['profilerMetrics']):
args.field_ids.extend(DCGM_PROF_FIELDS)
field_ids = dcgm_client_cli_parser.get_field_ids(args)
numeric_log_level = dcgm_client_cli_parser.get_log_level(args)
filemode = 'w+'
if not args.logfile:
os.makedirs('/tmp/moneo-worker', exist_ok=True)
args.logfile = '/tmp/moneo-worker/moneoExporter.log'
filemode = 'a'
# Defaults to localhost, so we need to set it to None.
if args.embedded:
dcgm_config['dcgmHostName'] = None
else:
dcgm_config['dcgmHostName'] = args.hostname
dcgm_config['prometheusPort'] = args.publish_port
dcgm_config['publishFieldIds'] = field_ids
dcgm_config['sendUuid'] = True
dcgm_config['jobId'] = None
logging.basicConfig(
level=numeric_log_level,
filemode=filemode,
filename=args.logfile,
format='[%(asctime)s] nvidia_exporter-%(levelname)s-%(message)s',
)