본문 바로가기

쉘스크립트애들15

UnicodeDecodeError: 'ascii' codec can't decode byte 'ascii' codec can't encode character u'\u269c' in position 109: ordinal not in range(128) python스크립트 print의 결과를 쉘에서 리다이렉션으로 파일로 결과를 쓰는 경우 'ascii' codec can't encode character u'\u269c' in position 109: ordinal not in range(128)와 같은 에러가 날때 예를 들어 파이썬스크립트를 아래처럼 실행/home/env-server-board/bin/python elt.py -a get -k MTFkOWE3MjM3 > dump.log 리다이렉트 하지 않은 경우에는 정상출력되는데dump.log에 'ascii' codec can't encode c.. 2018. 7. 12.
system resource check #!/bin/bash HOSTNAME=`hostname` TODAY_TIME=`date +%m%d%H%M` check_load(){ THRESHOLD=15 UPTIME=(`uptime | awk '{print $(NF-2) $(NF-1) $(NF)}' | sed 's/,/ /g'`) LOAD1M=${UPTIME[0]} LOAD5M=${UPTIME[1]} LOAD15M=${UPTIME[2]} RESULT=$(echo "$LOAD5M > $THRESHOLD" | bc) if [ $RESULT = '1' ]; then echo "$HOSTNAME : check load : ", "load.1m=$LOAD1M", "load.5m=$LOAD5M", "load.15m=$LOAD15M" else echo "$HOST.. 2018. 7. 9.
에러가 연달아 발생하고, 연속의 통계가 어떠냐에 따라 ifTTT 해보기 디비에 저장하지 않고 5분마다의 에러통계를 이용해 30분의 에러통계를 구해,쪼꼼 더 스마트하게 모니터링을 해보려고 한다. 보통.. 특정 주기마다 모니터링을 하고 임계치보다 높으면 노티를 받는데,그때마다 노티를 받으면 시간이 지나면 그 노티를 무시하게 되는..ㅎ그래서.. 좀 더 디벨롭하면.. 그 노티를 무시하지 않게 중요한 시점에 잘 쏴주는걸 생각해보게 된다. 여러생각을 하겠지만.. 여튼. 나는에러가 연달아 발생하고, 연속의 통계가 어떠냐에 따라 노티를 받거나, 후속처리를 하는게 맞다고 판판단되는 유형을 작업해보았다. 어플리케이션로그를 걍 읽는거라 파일에 로깅하는걸 선택했다.그리고 디비에 넣어 히스토리를 알순 없겠지만 이 스케쥴링을 젠킨스를 이용하기때문에,히스토리가 필요하면 할수는 있긴함 1) 5분에 통계.. 2016. 9. 2.
shell에서 xargs를 이용해 멀티로 wget사용해보기 언제쓰냐면앞에 이미지주소를 뽑아내고 > 그 주소를 변수에 담아 > 특정이름으로 다운로드 할때 test@dev:/tmp/script$ echo http://blabla.com/image/12345/org.jpg | cut -d"/" -f 3 | xargs -I% -P4 wget "http://blabla.com/image/12345/org.jpg" -O ./media/log/"%".jpg HTTP request sent, awaiting response... 200 OKLength: 621247 (607K) [image/jpeg]Saving to: ‘./media/log/12345.jpg’ 100%[============================================================.. 2016. 8. 8.