httpstat는 curl(1)
통계를 아름답고 명확하게 시각화합니다.
단일 파일인가요? 종속성이 없는 Python 스크립트? Python 3과 호환됩니까? .
httpstat
얻는 방법에는 세 가지가 있습니다.
스크립트를 직접 다운로드하세요: wget https://raw.githubusercontent.com/reorx/httpstat/master/httpstat.py
pip를 통해: pip install httpstat
홈브류를 통해(macOS만 해당): brew install httpstat
Windows 사용자의 경우 @davecheney의 Go 버전을 권장합니다. → 다운로드 링크
간단히:
python httpstat.py httpbin.org/get
pip 또는 Brew를 통해 설치한 경우 httpstat
명령으로 사용할 수 있습니다.
httpstat httpbin.org/get
httpstat
cURL의 래퍼이므로 URL 뒤에 cURL 지원 옵션을 전달할 수 있습니다( httpstat
에서 이미 사용하고 있는 -w
, -D
, -o
, -s
, -S
제외).
httpstat httpbin.org/post -X POST --data-urlencode " a=b " -v
httpstat
에는 동작을 제어하기 위한 여러 가지 환경 변수가 있습니다. 다음은 몇 가지 사용법 데모입니다. httpstat --help
실행하여 전체 설명을 볼 수도 있습니다.
HTTPSTAT_SHOW_BODY
출력에 응답 본문을 표시하려면 true
로 설정합니다. 본문 길이는 1023바이트로 제한되며 초과하는 경우 잘립니다. 기본값은 false
입니다.
HTTPSTAT_SHOW_IP
기본적으로 httpstat는 원격 및 로컬 IP/포트 주소를 표시합니다. 이 기능을 비활성화하려면 false
로 설정하세요. 기본값은 true
입니다.
HTTPSTAT_SHOW_SPEED
다운로드 및 업로드 속도를 표시하려면 true
로 설정하세요. 기본값은 false
입니다.
HTTPSTAT_SHOW_SPEED=true httpstat http://cachefly.cachefly.net/10mb.test
...
speed_download: 3193.3 KiB/s, speed_upload: 0.0 KiB/s
HTTPSTAT_SAVE_BODY
기본적으로 httpstat는 본문을 tmp 파일에 저장하며, 이 기능을 비활성화하려면 false
로 설정합니다. 기본값은 true
입니다.
HTTPSTAT_CURL_BIN
사용할 cURL bin 경로를 나타냅니다. 기본값은 현재 쉘 $PATH의 curl
입니다.
이 예에서는 Brew가 설치된 cURL을 사용하여 HTTP2 요청을 수행합니다.
HTTPSTAT_CURL_BIN=/usr/local/Cellar/curl/7.50.3/bin/curl httpstat https://http2.akamai.com/ --http2
HTTP/2 200
...
http2 기능을 활성화하려면 cURL을 nghttp2로 컴파일해야 합니다(#12).
HTTPSTAT_METRICS_ONLY
true
로 설정하면 httpstat는 json 형식으로만 측정항목을 출력합니다. 이는 데이터를 읽는 대신 구문 분석하려는 경우에 유용합니다.
HTTPSTAT_DEBUG
디버깅 로그를 보려면 true
로 설정하세요. 기본값은 false
입니다
편의를 위해 .zshrc
또는 .bashrc
에서 이러한 환경을 내보낼 수 있습니다. 예:
export HTTPSTAT_SHOW_IP=false
export HTTPSTAT_SHOW_SPEED=true
export HTTPSTAT_SAVE_BODY=false
다음은 다양한 언어로 구현된 몇 가지 예입니다.
이동: davecheney/httpstat
이것은 httpstat의 Go 대안으로 순수 Go로 작성되었으며 외부 프로그램에 의존하지 않습니다. 견고한 바이너리 실행을 좋아한다면 선택하세요(실제로 저는 그렇습니다).
Go(라이브러리): tcnksm/go-httpstat
CLI 도구인 것 외에도 이 프로젝트는 Go 코드에서 HTTP 요청의 대기 시간을 디버깅하는 데 도움이 되는 라이브러리로 사용되며 매우 사려 깊고 유용합니다. 이 기사에서 자세한 내용을 참조하세요.
배쉬: b4b4r07/httpstat
이게 바로 제가 처음에 하고 싶었지만 배쉬 실력에 자신이 없어 포기했던 일이군요, 수고하셨습니다!
노드: yosuke-furukawa/httpstat
b4b4r07은 그의 기사에서 이것을 언급했으며 HTTP 클라이언트로도 사용될 수 있습니다.
PHP: talhasch/php-httpstat
@talhasch의 PHP 구현
httpstat
의 일부 코드 블록은 내 다른 프로젝트에서 복사되었습니다. 살펴보세요.
reorx/python-terminal-color 터미널 색상 인쇄를 위한 드롭인 단일 파일 라이브러리입니다.
reorx/getenv 유형을 포함한 환경 변수 정의.