우리의 Rails 통합을 통해 올바른 궤도에 오르십시오!
이 강좌는 새로운 Rails 프로젝트를 시작하고 처음부터 관찰 가능성을 구축하고자 하든, 기존 Rails 서비스에 더 나은 관찰 가능성을 투자하고 있든 간에 즉시 벌집을 충분히 활용할 수 있도록 도와드립니다.
무료 벌집 계정 만들기
ui.honeycomb.io/signup으로 이동하여 계정을 만드십시오.우리는 구글의 단일 로그인을 지원하는데, 이것은 새로운 비밀번호를 만들거나 기억할 필요가 없다는 것을 의미한다.
프롬프트가 나타나면 조직 이름을 제공합니다.이것은 유일한 ID이므로 회사 이름을 사용하거나 대기업인 경우
company-team
(예: huuli-research
)을 사용할 수 있습니다.첫 번째 데이터 세트의 이름을 묻는 메시지가 나타나면
rails-app
또는 응용 프로그램과 같은 이름으로 이름을 지정합니다.(나중에 생각을 바꾸면 새 데이터 집합을 만들면 됩니다.)Ruby 통합을 선택하고 Create 를 클릭합니다.팀을 만들면 벌집 파우더 이완 커뮤니티에 초대하는 이메일이 자동으로 전송됩니다.This blog post 고객 모델 제니 보이어에서 왔습니다. 가입해야 하는 이유를 상세히 소개했습니다. 기회가 된다면 꼭 가보세요!
API 키 가져오기
다음 페이지에서는 쓰기 키라고도 하는 벌집 API 키를 제공합니다.Ruby 통합을 선택하면 이 페이지에는 Rails별 설명을 포함하여 Ruby Beeline을 설정하는 설명도 나열됩니다.하지만 걱정하지 마세요. 제가 여기서 한 걸음 한 걸음 자세히 소개해 드릴게요.
API 키를 복사하면 다음 단계에서 사용할 것입니다.API 키를 잊어버린 경우 항상 팀 설정에서 다시 복사할 수 있습니다.
Ruby Beeline SDK 구성
이제 터미널을 열고 응용 프로그램에 Rails 통합을 설정할 수 있습니다.Ruby Beeline SDK는 gem 형식으로 제공되므로 Bundler를 사용하여 gem 파일에 추가합니다.
$bundle 벌집 선 추가
이제 우리는 벌집 배치를 생성할 준비를 하고 있다.Beeline에는 Rails 생성기가 내장되어 있으므로 이전에 복사한 API 키(여기는
abc123
)와 데이터 세트의 이름 rails-app
과 함께 사용할 수 있습니다.$rails 생성 벌집 abc123 - 데이터 집합 rails 응용 프로그램
그러면
config/initializers/honeycomb.rb
의 새 파일이 생성됩니다.생성기는 시작하기 위해 API 키를 하드코딩하지만, 나중에 이 파일을 업데이트하여 키를 더욱 안전하게 저장합니다.첫 번째 이벤트 생성
당신은 이미 벌집에 데이터를 보내기 시작할 준비가 되어 있습니다!Rails 서버를 시작하고 브라우저에서
localhost:3000
으로 이동하거나 원하는 경우 터미널에서 curl localhost:3000
을 실행합니다.루트 경로를 맞히고 첫 번째 이벤트를 벌집으로 보냅니다.ui.honeycomb.io으로 돌아가서 보시죠!메인 페이지는 총 요청도에 있는 단일 데이터 포인트와 최근 추적된 단일 추적을 보여 줍니다.성공
dev에서 온 이 요청만 있고 충분한 데이터가 없어서 홈페이지를 매우 재미있게 합니다.하지만 우리는 여전히 한가로이 돌아다닐 수 있다.최근 추적 에서 추적 버튼을 클릭합니다.
이것은 우리가 방금 요청한 추적 보기로 가져옵니다.
우리가 여기서 본 추적은 내장된 루비 비라인!최상위 수준의 HTTP 요청, ActiveRecord 호출, 컨트롤러 작업, 보기 렌더링 범위를 자동으로 얻을 수 있을 뿐만 아니라 관련 상하문 필드를 모든 범위에 추가할 수 있습니다.루트 간격
http_request
을 선택하고 오른쪽 사이드바의 필드 목록을 스크롤하여 해당 간격에 추가된 필드를 확인합니다.그리고 process_action.action_controller
과 같은 다른 경계를 선택하여 경계에 포함된 필드를 보십시오.벌집으로 보내기 위해 프로그램의 각 부분을 검사하기 위해 추가 상하문 필드를 고려하고 있을 수도 있지만, 이것은 아주 좋은 정지점이다.이 MVP 버전을 생산에 투입하려면 다음 단계는 무엇입니까?
배송 준비
당신의 응용 프로그램은 현재 이미 벌집을 설치했습니다!PR을 열고, 새 도구를prod로 미루고, 더 많은 견해를 잠금 해제할 수 있도록 업데이트합니다.
이전에 API 키를 사용하여
rails generate
명령을 직접 호출하여 config/initializers/honeycomb.rb
파일을 만들었습니다.이제 하드코딩 API 키를 삭제하고 팀 관리 기밀에 따라 안전하게 저장할 때가 되었습니다.예를 들어, Rails
config/secrets.yml
파일을 사용하여 기밀을 관리하는 경우 API 키를 추가할 수 있습니다.발전:
벌집 쓰기 키: "abc123"
생산:
벌집 쓰기 키: "abc123"
그런 다음 기밀 파일에서 API 키를 직접 안전하게 사용하도록 벌집 초기화기를 업데이트합니다.
- 구성write_key=“abc123”
+ 구성.write_key=궤도.활용단어참조비밀?honeycomb\u write\u 키
준비됐어!PR 열기🚢 (check out the Pollinators blog post과 나는 일찍이 공유했고, 너는 공관 심사를 기다리고 있다😉).
생산 유량을 관찰하다
왜 이렇게 서둘러요?벌집의 홈페이지가 제작 중에 활기를 띠고 있다.Ruby Beeline에 내장된 Rails 자동 감지를 사용하여 총 요청, 지연 시간 및 오류 발생률을 확인할 수 있습니다.
HTTP 상태 코드 탭을 클릭하면 응답 코드의 분해와 각 코드의 지연 분포를 볼 수 있습니다.
이곳에는 탐색해야 할 곳이 많으니 클릭만 하면 된다.네가 자동 기기 자체에서 얼마나 배울 수 있는지 봐라.
사용자 정의 검사 추가
이제 응용 프로그램의 생산 유량을 통해 벌집을 탐색했으니 깊이 파고들 때가 되었다.일반 Rails HTTP에서 요청한 이벤트 및 추적을 처리할 수 있으므로 사용자 정의 간격 및 필드를 추가해 보겠습니다.더 많은 응용 프로그램의 독특한 점은 무엇입니까?
직선 자동 검출 범위에 있지 않은
lib/
코드가 있을 수 있습니다.예를 들어, 응용 프로그램이 gem을 사용하여 200개의 사용자 추문을 한 번에 가져온다고 가정합니다.def get\u all\u 트윗 (사용자)
모두 =[]
옵션 = {count:200, include\urts:true}
순환
추문 = 클라이언트.사용자 타임라인 (사용자, 옵션)
모든if 트윗을 되돌려줍니다.비어 있었어
모든 + = 트윗
옵션 [:max_id]= 밀어넣기.마지막id-1
중지
중지
이것은 몇 가지 도구가 있는 업데이트 버전입니다.
def get\u all\u 트윗 (사용자)
벌집.start\u span (이름: "get\u all\u tweets") do
벌집._field_을(를) _trace('user', user)에 추가
모두 =[]
옵션 = {count:200, include\urts:true}
순환
벌집.start\u span (이름: "get\u batch") do
벌집.add_ 필드('options', options)
추문 = 클라이언트.사용자 타임라인 (사용자, 옵션)
모든if 트윗을 되돌려줍니다.비어 있었어
모든 + = 트윗
옵션 [:max_id]= 밀어넣기.마지막id-1
중지
중지
중지
중지
우리는 우선 전체
get_all_tweets
방법체를 한 범위에 포장한 다음에 user
필드를 전체 추적에 추가합니다. 왜냐하면 우리는 전체 요청에서 그것에 관심을 가질 수 있기 때문입니다.get_batch
이라는 순환체 주위에 두 번째 span 블록을 추가했습니다. 이 블록은 요청마다 하위 span을 만들고 200개의 트윗을 받았습니다.get_batch
내부에서 options
을 하나의 필드로 추가하여 트위터의 API를 클릭할 때 관련 인자를 볼 수 있도록 요청합니다.(이 점에서 순환체를 단독
get_batch
방법으로 분해할 수 있습니다. 이것은 통상적으로 당신이 원하는 범위와 관련이 있습니다.)우리의 중첩 간격은 벌집 UI에서 궤적으로 나타납니다.
get_batch
마다 트위터에 API 호출을 하고 있기 때문에 이 사용자로부터 모든 트윗을 얻으려면 8차례의 API 호출이 필요합니다.너의 여정을 계속해라!
Ruby Beeline은 많은 작업을 수행하여 풍부한 데이터를 벌집에 신속하게 전송할 수 있습니다. 많은 작업을 하지 않아도 됩니다.이외에 선이 자동으로 실행하는 작업을 제외하고는 사용자 정의 도구를 추가하기 시작하는 데 코드가 많이 필요하지 않습니다.
현재 당신은 이미 데이터가 있습니다. 당신의 팀을 초청하여 당신이 함께 어떤 견해를 배울 수 있는지 보십시오!Check out this blog post은 당신의 동료를 돕기 위해 벌집의 유용한 기능을 소개합니다.
Reference
이 문제에 관하여(우리의 Rails 통합을 통해 올바른 궤도에 오르십시오!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/honeycombio/get-on-the-right-track-with-our-rails-integration-4e6i텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)