흑연 속삭임의 데이터를 정리하는 방법은 무엇입니까?
흑연의 저장소 속삭임의 데이터를 삭제하고 싶지만 흑연 문서에는 아무것도 없습니다.
내가 한 한 가지 방법은 파일을 /opt/graphite...../whispers/stats...
수동으로 삭제하는 것 입니다.
하지만 이것은 지루한데 어떻게해야합니까?
현재 / opt / graphite / storage / whisper /에서 파일을 삭제하는 것이 귓속말 데이터를 삭제하는 올바른 방법입니다.
프로세스의 지루한 측면에 관해서는 제거하려는 특정 패턴이 있으면 find 명령을 사용할 수 있습니다.
/ opt / graphite / storage / whisper -name loadavg.wsp -delete 찾기
answers.launchpad.net/graphite에 유사한 질문
이것이 Server Fault 영역으로 이동한다고 가정하지만 다음 크론 작업을 추가하여 30 일 이상 작성되지 않은 이전 메트릭 (예 : 폐기 된 클라우드 인스턴스)을 삭제했습니다.
find /mnt/graphite/storage -mtime +30 | grep -E \ "/mnt/graphite/storage/whisper/collectd/app_name/[^/]*" -o \ | uniq | xargs rm -rf
유효한 데이터가있는 디렉토리가 삭제됩니다.
먼저:
find whisperDir -mtime +30 -type f | xargs rm
그런 다음 빈 디렉토리를 삭제하십시오.
find . -type d -empty | xargs rmdir
새 빈 디렉토리가 남을 수 있으므로이 마지막 단계를 반복해야합니다.
사람들이 지적했듯이 파일을 제거하는 것이 좋습니다. 이전 답변을 확장하여 최대 보존 기간을 초과 한 파일을 제거하는이 스크립트를 만들었습니다. cronjob
상당히 정기적으로 실행하십시오 .
#!/bin/bash
d=$1
now=$(date +%s)
MINRET=86400
if [ -z "$d" ]; then
echo "Must specify a directory to clean" >&2
exit 1
fi
find $d -name '*.wsp' | while read w; do
age=$((now - $(stat -c '%Y' "$w")))
if [ $age -gt $MINRET ]; then
retention=$(whisper-info.py $w maxRetention)
if [ $age -gt $retention ]; then
echo "Removing $w ($age > $retention)"
rm $w
fi
fi
done
find $d -empty -type d -delete
주의해야 할 몇 가지 사항- whisper-info
호출은 상당히 무겁습니다. 호출 횟수를 줄이기 위해 MINRET 상수를 입력하여 파일이 1 일 (24 * 60 * 60 초)이 될 때까지 삭제 대상으로 간주되지 않도록 사용자의 필요에 맞게 조정합니다. 작업을 분할하거나 일반적으로 효율성을 개선하기 위해 수행 할 수있는 다른 작업이있을 수 있지만 아직 그럴 필요는 없었습니다.
참고 URL : https://stackoverflow.com/questions/9587161/how-to-cleanup-the-graphite-whispers-data
'program tip' 카테고리의 다른 글
$ window 또는 $ location을 사용하여 AngularJS에서 리디렉션 (0) | 2020.09.10 |
---|---|
프로그래밍 방식으로 글꼴 사용자 지정 글꼴을 Spinner 텍스트로 설정하는 방법은 무엇입니까? (0) | 2020.09.10 |
멀티 파트 / 양식 데이터의 예 (0) | 2020.09.10 |
HttpClient에서 await를 사용한 비동기 호출이 반환되지 않음 (0) | 2020.09.10 |
HTML5 숫자 입력-항상 소수점 이하 2 자리 표시 (0) | 2020.09.10 |