aws / aws/sagemaker-python-sdk
Library logs to stdout on import
- Dominant language
- Python
- Stars
- 2.3k
- Forks
- 1.3k
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 35
Description
**Describe the bug**
Logging to stdout is an undesirable default for a library, especially since tools that use the library will want to control what is written to stdout. For example, imagine a command line program that fetches records from FeatureStore or metadata about training runs and writes the data to stdout so that it can be parsed by other tools like `grep` or `jq` or `awk`.
This is most likely caused by [this line](https://github.com/aws/sagemaker-python-sdk/blob/f60dd3b3710a30f56a19552c1d59a063802a4e62/src/sagemaker/config/config_utils.py#L42).
**To reproduce**
```
import sagemaker
```
This writes to `stdout`:
```
>>> import sagemaker
sagemaker.config INFO - Not applying SDK defaults from location: /etc/xdg/sagemaker/config.yaml
sagemaker.config INFO - Not applying SDK defaults from location: /home/username/.config/sagemaker/config.yaml
```
**Expected behavior**
I would expect this to be written to `stderr` so that it doesn't interfere with regular program output.
**Screenshots or logs**
If applicable, add screenshots or logs to help explain your problem.
**System information**
A description of your system. Please provide:
- **SageMaker Python SDK version**: `'2.198.0'`
- **Framework name (eg. PyTorch) or algorithm (eg. KMeans)**: N/A
- **Framework version**: N/A
- **Python version**: `3.8`
- **CPU or GPU**: `Intel(R) Xeon(R) CPU E5-2686 v4 @ 2.30GHz`
- **Custom Docker image (Y/N)**: N
**Additional context**
Add any other context about the problem here.
Contributor guide
Assessment
This issue has not been assessed yet.