2013-11-20 5 views
4

저는 logstash가 제공 한 문서를 읽은 후에도 여전히 혼란 스럽습니다. Android 앱을 작성할 계획이며 앱의 활동을 기록하고 싶습니다. 로그는 네트워크를 통해 전송됩니다. logstash가 올바른 해결책이 아닙니까? 로그를 생성하는 시스템에 "에이전트"가 설치되어 있어야하기 때문입니다.안드로이드에서 로그를 받기위한 logstash? 또는이 elasticsearch입니까?

앱 활동에서 로그를 저장할 수있는 시스템이 필요하지만 수집 된 로그를 일반 텍스트 파일로 내보낼 수 있어야합니다. 나는 logstash가 elasticsearch에 출력 할 수 있다는 것을 알고 있지만, 동시에 평문 파일로 내보낼 수 있는지 확실하지 않습니다. 아니면 ElasticSearch가해야 할 일입니까?

덕분에 당신이

답변

4

Logstash 전달자를 제공 할 수있는 모든 입력 톤 불행하게도 안드로이드/IOS에 대한 현재 사용할 수 없습니다 없으며 나는 지역 사회에서 그것에 대한 기존의 해결책을 찾을 수 있습니다. (나는 여기에 같은 질문을했으나 툴/라이브러리 제안을 요청한 것으로 간주되어 투표에서 제외되었습니다). 불행히도 자신이 직접 쓰는 것 (오프라인 연결, 일괄 처리, 일정 계획, 압축, 파일 추적 등을 고려해야 함)이나 기타 (보통 상업용) 로깅 서비스 (예 : LogEntries). 그런데 LogEntries의 android/ios 클라이언트는 오픈 소스입니다. OSS 라이센스에 대해서는 명확하지 않지만 logstash를위한 에이전트를 작성하려면 LogEntries의 안드로이드 에이전트 구현을 살펴보십시오.이 안드로이드 에이전트 구현은 앞서 언급 한 모든 기술적 인 문제를 이미 해결합니다. https://github.com/logentries/le_android.

그리고 다른 질문에 답하기 위해 yes logstash는 보통 로그 장치 입력 (일명 logstash 전달자)을 통해 (모바일 장치에서) 사용자의 로그를 받아야합니다. 그런 다음 Logstash는 &에 이러한 로그 파일을 elasticsearch에 색인을 붙일 수 있습니다. 그런 식으로 구성되어 있으면

+0

Logstash HTTP 입력 플러그인은 어떻게 사용합니까? https://www.elastic.co/blog/introducing-logstash-input-http-plugin –

+0

그렇다면 서버 측에서 HTTP 또는 TCP 끝점을 사용할 수 있습니다. 하지만 클라이언트 에이전트를 직접 구축해야합니다. 즉, 사용자가 직접 로그 항목을로드하거나, 필터링하거나, 일괄 처리하거나, 압축하거나, 스로틀하거나, 예약 (오프라인/온라인, 모바일/wifi)하거나, 다시 시도하고 메타 데이터 (IP, 장치 모델, OS 버전)를 추가하고 익명화하십시오. PC에서는 이것이 바로 logstash 에이전트의 기능입니다. logstash에 대한 모바일 세계에서 기존 솔루션을 찾을 수 없습니다. – Sheepy

관련 문제