aws / aws/sagemaker-python-sdk

Library logs to stdout on import

Đang mở
#4,387 1 bình luận 2 reaction 1 người được giao Được @nargokul nhận Xem trên GitHub
component: debugger component: pysdk-team type: bug
Ngôn ngữ chính
Python
Star
2.3k
Fork
1.3k
Merge trung bình
1 ngày 22 giờ
Pull request đã merge (30 ngày)
35

Mô tả

**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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.