MlFlow - 如何在记录前端执行的操作时获取 user_id 或 user_name

问题描述 投票:0回答:1

例如,为了遵守内部软件策略强加的某些要求,我需要记录在前端(UI)上执行的操作的 user_name 或 user_id

@catch_mlflow_exception
@_disable_if_artifacts_only
def _delete_experiment():
    request_message = _get_request_message(
        DeleteExperiment(), schema={"experiment_id": [_assert_required, _assert_string]}
    )
    experiment_id=request_message.experiment_id

    experiment_name=request_message.experiment_name
    # print(experiment_id)
    # Log the experiment_id and username
    logging.info(f"Deleting experiment with ID: {experiment_id} by user: {user_id}")

    _get_tracking_store().delete_experiment(request_message.experiment_id)
    response_message = DeleteExperiment.Response()
    response = Response(mimetype="application/json")
    response.set_data(message_to_json(response_message))
    return response

如何获取user_id?

tracking mlflow
1个回答
0
投票

希望这可以帮助别人

def _delete_experiment():
    request_message = _get_request_message(
        DeleteExperiment(), schema={"experiment_id": [_assert_required, _assert_string]}
    )
    experiment_id=request_message.experiment_id

    # Extract username from the session
    username = session.get('username')
    if not username:
        raise ValueError("Missing user_id in session")
    
    # Fetch the experiment name from the tracking store
    experiment = _get_tracking_store().get_experiment(request_message.experiment_id)
    if not experiment:
        raise ValueError(f"Experiment with ID {experiment_id} not found")
    experiment_name = experiment.name

    # Log the experiment_id and username
    _logger.info(f"Deleting experiment '{experiment_name}' with ID: {experiment_id} by user: {username}")

    _get_tracking_store().delete_experiment(request_message.experiment_id)
    response_message = DeleteExperiment.Response()
    response = Response(mimetype="application/json")
    response.set_data(message_to_json(response_message))
    return response
© www.soinside.com 2019 - 2024. All rights reserved.