Flume 모니터링 (Monitor)

5183 단어 Flume
Flume 을 사용 하여 실시 간 으로 로 그 를 수집 하 는 과정 에서 데 이 터 를 잃 어 버 리 지 않도록 하 는 사무 체제 가 있 지만 Source, Channel, Sink 간 의 메시지 전송 이 정상 적 인지 항상 관심 을 가 져 야 합 니 다.예 를 들 어 Source 가 Channel 에 얼마나 많은 정 보 를 전 송 했 는 지, Sink 이 Channel 에서 얼마나 많은 정 보 를 얻 었 는 지, Source 수신 과 Sink 이 내 려 앉 은 정 보 량 (즉 Channel 에 쌓 인 정 보 량) 의 편차 가 너무 큰 지 등 이다.
        Flume 는 저희 에 게 Monitor 메커니즘 을 제공 해 주 었 습 니 다.http://flume.apache.org/FlumeUserGuide.html#monitoring), Reporting 방식 을 통 해 과정 중의 Counter 를 모두 출력 합 니 다.모두 4 개의 리 포 팅 방식 (즉 JMX Reporting, Ganglia Reporting, JSON Reporting, Custom Reporting) 이 있 는데 여기 서 가장 간단 한 JSON Reporting 을 예 로 들 자.
Flume Agent 를 시작 할 때 두 개의 인 자 를 추가 해 야 합 니 다.
bin/flume-ng agent --conf conf --conf-file conf/flume-agent.conf --name logger -Dflume.monitoring.type=http -Dflume.monitoring.port=34545 -Dflume.root.logger=INFO,console

# nohup    
nohup bin/flume-ng agent --conf conf --conf-file conf/flume-agent.conf --name logger -Dflume.monitoring.type=http -Dflume.monitoring.port=34545 -Dflume.root.logger=INFO,console &

모니터링 매개 변수: - dflume. monitoring. type = http 는 http 의 모니터링 방식 을 사용 합 니 다. -Dflume. monitoring. port = 34545 대표 모니터링 포트 는 34545 입 니 다.
시작 하면 Flume Agent 가 있 는 노드 에서 http 서 비 스 를 시작 합 니 다. 방문 주소 http: / /: 34545 / metrics 는 JSON 을 되 돌려 줍 니 다. 다음 과 같 습 니 다.
{
	"SOURCE.avroSource": {
		"EventReceivedCount": "729",
		"AppendBatchAcceptedCount": "593",
		"Type": "SOURCE",
		"EventAcceptedCount": "729",
		"AppendReceivedCount": "0",
		"StartTime": "1565406916285",
		"AppendAcceptedCount": "0",
		"OpenConnectionCount": "2",
		"AppendBatchReceivedCount": "593",
		"StopTime": "0"
	},
	"CHANNEL.fileChannel": {
		"ChannelCapacity": "214748364",
		"ChannelFillPercentage": "0.0",
		"Type": "CHANNEL",
		"ChannelSize": "0",
		"EventTakeSuccessCount": "729",
		"EventTakeAttemptCount": "122494",
		"StartTime": "1565406916027",
		"EventPutAttemptCount": "729",
		"EventPutSuccessCount": "729",
		"StopTime": "0"
	},
	"SINK.hdfsSink": {
		"ConnectionCreatedCount": "324",
		"ConnectionClosedCount": "324",
		"Type": "SINK",
		"BatchCompleteCount": "0",
		"BatchEmptyCount": "121184",
		"EventDrainAttemptCount": "729",
		"StartTime": "1565406916028",
		"EventDrainSuccessCount": "729",
		"BatchUnderflowCount": "581",
		"StopTime": "0",
		"ConnectionFailedCount": "0"
	}
}

모니터링 지표 설명:
Source:
  • OpenConnectionCount: 현재 클 라 이언 트 나 sink 과 연결 되 어 있 는 총 수량 (현재 avro source 만 이 도량 을 보 여 줍 니 다)
  • AppendBatchAccepted Count: channel 에 성공 적 으로 제출 한 횟수 의 총 수량
  • AppendBatch Received Count: 이벤트 횟수 를 받 은 총 수량
  • EventAccepted Count: channel 에 성공 적 으로 기록 되 었 으 며, source 는 success 가 이 벤트 를 만 든 sink 또는 RPC 클 라 이언 트 시스템
  • 을 되 돌려 줍 니 다.
  • AppendReceived Count: 각각 하나의 이벤트 만 있 는 이벤트 의 총 수량 (RPC 호출 중의 하나의 append 호출 과 같 음)
  • StopTime: source 정지 시 Epoch 이후 밀리초 값 시간
  • Start Time: source 시작 시 Epoch 이후 밀리초
  • EventReceived Count: 지금까지 source 에서 받 은 이벤트 총 수량
  • AppendAccepted Count: 단독으로 들 어 온 이벤트 가 채널 로 들 어 오고 성공 적 으로 돌아 온 이벤트 의 총 수량
  • Channel:
  • EventPut SuccessCount: channel 에 성공 적 으로 기록 하고 제출 한 이벤트 총 수량
  • Channel Fill Percentage: channel 만 료 시의 백분율 은 이 값 에 중점 을 두 고 있 습 니 다. 일반적인 상황 에서 이 값 이 0.01 보다 적 으 면 원활 하 다 는 것 을 의미 합 니 다. sink 의 속 도 는 source 의 속도 보다 빠 릅 니 다. 만약 에 이 값 이 5 를 초과 하면 sink 의 속도 가 빠 르 지 않 고 sink 을 조절 해 야 하거나 source 의 속 도 를 조절 해 야 한 다 는 것 을 의미 합 니 다.
  • StopTime: channel 정지 시 Epoch 이후 밀리초 값 시간
  • EventPutAttemptCount: Source 가 Channe 의 이벤트 총 수량 을 기록 하려 고 시도 합 니 다
  • Channel Size: 현재 channel 에서 이벤트 의 총 수량
  • Start Time: channel 시작 시 Epoch 이후 밀리초
  • EventTake SuccessCount: sink 에서 성공 적 으로 읽 은 이벤트 의 총 수량
  • Channel Capacity: channel 의 용량
  • EventTake AttemptCount: sink 은 channel 에서 사건 의 총 수량 을 끌 어 내 려 고 시도 합 니 다.이것 은 매번 사건 이 되 돌아 오 는 것 을 의미 하지 않 습 니 다. 왜냐하면 sink 이 끌 어 올 릴 때 channel 은 데이터 가 없 을 수 있 기 때 문 입 니 다
  • Sink:
  • Connection Closed Count: 다음 단계 나 저장 시스템 이 닫 힌 연결 수량 (예 를 들 어 HDFS 에서 파일 을 닫 는 것)
  • EventDrain SuccessCount: sink 이 저 장 된 이벤트 의 총 수량
  • 을 성공 적 으로 기록 하 였 습 니 다.
  • BatchComplete Count: 최대 대량 사이즈 와 같은 대량 수량
  • ConnectionFailedCount: 다음 단계 나 저장 시스템 이 잘못 닫 힌 연결 수량 (예 를 들 어 HDFS 에서 새로 만 든 파일 이 시간 초과 로 닫 힌 경우)
  • EventDrainAttemptCount: sink 저 장 된 이벤트 의 총 수량 을 기록 하려 고 시도 합 니 다
  • Connection Created Count: 다음 단계 나 저장 시스템 에서 만 든 연결 수량 (예 를 들 어 HDFS 에서 새 파일 만 들 기)
  • BatchEmpty Count: 빈 대량의 수량 입 니 다. 만약 수량 이 많 으 면 souce 쓰기 데이터 가 sink 청소 데이터 보다 훨씬 느 립 니 다
  • BatchUnderflow Count: sink 설정 에 사용 되 는 최대 대량 크기 보다 작은 대량 수량 입 니 다. 이 값 이 높 으 면 sink 이 souce 보다 빠르다 는 뜻 입 니 다
  • 좋은 웹페이지 즐겨찾기