Treasure Agent (td-agent)에서 Treasure Data로 데이터 넣기

3984 단어 FluentdTreasureData
보물 데이터에서는 클라우드 서비스에 데이터를 지속적으로 업로드하기 위한 데몬으로 Tresure Agent(td-agent)를 개발했습니다. td-agent의 일부는 Fluentd으로 오픈 소스화되어 있으며 다양한 기업에서 사용되고 있습니다.

이 기사에서는 td-agent를 사용하여 보물 데이터에 데이터를 업로드하는 방법을 보여줍니다. 이 3분 동영상 자습서에서도 실제 설정 방법을 볼 수 있습니다.

Step0: 사전 준비



사전 준비를 위해 여기 문서에 따라 NTP 및 파일 디스크립터 최대 수를 설정하십시오. 최악의 경우 로그 손실로 이어집니다.

Step1: td-agent 설치



Mac/Linux 용 패키지가 제공되므로 다운로드하여 설치합니다.

RHEL/CentOS 5,6
$ curl -L http://toolbelt.treasuredata.com/sh/install-redhat.sh | sh

우분투 10.04, 12.04
# 10.04 Lucid
$ curl -L http://toolbelt.treasuredata.com/sh/install-ubuntu-lucid.sh | sh
# 12.04 Precise
$ curl -L http://toolbelt.treasuredata.com/sh/install-ubuntu-precise.sh | sh

MacOS X 10.8, 10.9
$ open 'http://packages.treasuredata.com/2/macosx/td-agent-2.0.3-0.dmg'

Step2: td-agent.conf 편집



/etc/td-agent/td-agent.conf를 다음과 같이 편집합니다. API 키는 트레저 데이터에 가입 한 후, 웹 콘솔 로부터 취득합니다. Write Only API 키를 사용하는 것에 유의하십시오.
# HTTP input
<source>
  type http
  port 8888
</source>

# Treasure Data output
<match td.*.*>
  type tdlog
  endpoint api.treasuredata.com
  apikey YOUR_API_KEY
  auto_create_table
  buffer_type file
  buffer_path /var/log/td-agent/buffer/td
  use_ssl true
</match>

편집 후 다시 시작합니다.
# Linux
$ sudo /etc/init.d/td-agent restart

# MacOS X
$ sudo launchctl unload /Library/LaunchDaemons/td-agent.plist
$ sudo launchctl load /Library/LaunchDaemons/td-agent.plist

Step3: 데이터 투입



마지막으로 데이터를 투입해 봅니다. 이번에는 HTTT POST에서 JSON을 로컬 td-agent로 보냅니다.
$ curl -X POST -d 'json={"action":"login","user":2}' \
  http://localhost:8888/td.testdb.www_access

일반적으로 데이터는 5분에 한 번 업로드됩니다. 다음 명령으로 강제로 버퍼를 플러시하는 것도 가능합니다.
# Linux
$ kill -USR1 `cat /var/run/td-agent/td-agent.pid`

# MacOS X
$ sudo kill -USR1 `sudo launchctl list | grep td-agent | cut -f 1`

그런 다음 웹 콘솔의 데이터베이스 탭에서 데이터가 제출되었는지 확인할 수 있습니다.

요약



이상으로 완료입니다. 문제가 발생하면/var/log/td-agent/td-agent.log를 참조하거나 굉장히 rt @ t 어머 였어. 이 m으로 문의하십시오.

HTTP 외에도 각종 언어에서 로그를 POST할 수 있습니다. Java, Ruby, Python, Perl, PHP, Node.js, Scala, .NET 등이 지원됩니다.
  • Streaming Import

  • td-agent의 보류 데이터에 내보내기 플러그인에는 다른 옵션도 있습니다. 자세한 정보는 아래 기사를 참고하십시오.
  • fluent-plugin-td 설명

  • 대규모 환경에서의 설정은 아래의 문서를 참고해 주세요. 당사에서는 약 5000대에 td-agent를 설치하고 실시간으로 로그를 1분 간격으로 수집된 고객도 있습니다.
  • High Availability td-agent Configuration

  • 좋은 웹페이지 즐겨찾기