Splunk Curl App에서 Qiita의 페이지보기 수를 확인했습니다.
개요
Qiita의 기사를 투고해 20건을 넘어 왔습니다만, 과거의 자신의 기사로 무엇이 읽혀지고 있는지 view수를 확인하고 싶었을 때에 qiita의 마이 페이지로부터는 단번에 확인하는 것이 할 수 없다. . 각 기사를 표시하면 소유자는 View 수를 확인할 수 있습니다만 여하튼 하나씩 확인할 수밖에 없습니다!
조사해 보면 Google Analytics와 연계할 수 있는 것 같고, 일일의 액세스수등은 확인할 수 있었습니다만, 과거의 데이터가 반영되지 않는다. . (즉 view 총수는 판단할 수 없다)
그래서 조사해 보았습니다.
그렇다면 Qiita API가있는 것처럼 curl을 사용하여 확인하는 파이센이 있다는 것을 알았습니다.
htps : // 코 m / 카이 _ 코 / ms / 3f10 93f4 아 3b57b2d0
htps : // 일 ck. 기주 b. 이오 / 포스트 / 0009 - 쿠타 쿠 rl /
같은 일을 해도 지루하지 않으므로 Splunk를 사용하여 데이터를 검색하고 확인하고 싶습니다. (특히 의미는 없습니다)
Splunk Curl App 설치
Splunk에서 Curl을 실행할 수 있는 앱이 있습니다. 이번에는 이것을 사용하여 Qiita API에 액세스해 보겠습니다.
Splunk Curl Command
htps : // sp ㎅ k 바세. sp ㎅ k. 이 m/아 p/4172/
앱 설치 절차는 생략하겠습니다.
Qiita API 준비
Qiita API 가 공개되어 있어 기사를 확인하거나 투고할 수 있는 것 같습니다.
여기에서는 자신의 게시물 기사에 액세스할 수 있도록 토큰을 발급합니다.
액세스 토큰 발급
htps : // 코 m / 세팅 gs / 토켄 s / w
이제 새 토큰이 발행되므로 잊지 않도록 어딘가에 복사하여 저장하십시오.
(나중에 토큰을 확인할 수 없으므로 요주의)
데이터 얻기
즉시 Curl SPL을 사용하여 데이터를 검색하고 싶습니다.
| curl url="https://qiita.com/api/v2/authenticated_user/items?page=1&per_page=100" \
headers="{'Authorization': 'Bearer <<取得した Tokenを入力>> '}" \
output=text
(*) output=json이라고 에러가 되어 버리므로, text로 취득했습니다.
이런 식으로 필드 추출도 이벤트 브레이크도 되어 있지 않은 상태이기 때문에 데이터를 가공합니다.
| curl url="https://qiita.com/api/v2/authenticated_user/items?page=1&per_page=100" headers="{'Authorization': 'Bearer <<取得した Tokenを入力>>'}" output=text
| makemv delim="rendered_body" reponse
| mvexpand reponse
| where (reponse like "%title%")
| rex field=reponse "\"page_views_count\":(?<view>[\w\d]+)"
| rex field=reponse "\"likes_count\":(?<like>\d+)"
| rex field=reponse "\"title\":(?<title>[\W\w]+),\"updated_at"
| rex field=reponse "\"created_at\":\"(?<create>[\d-]+)"
| rex field=reponse "\"id\":\"(?<id>[0-9a-z]+)"
| table view like title create id
어라? ? 중요한 view 가 null 값이 되고 있다. .
분명히 각 페이지에 가지 않으면 view count를 얻을 수없는 것 같습니다. .
예를 들면 이런 식으로 url의 items의 뒤에 id를 추가한다.
| curl url="https://qiita.com/api/v2/items/6c0d1f46c531a17f8671" headers="{'Authorization': 'Bearer <<取得した Tokenを入力>>'}" output=json
| table id title created_at page_views_count likes_count
(*) 왜인지, 각 페이지마다라면 output=json로 취득할 수 있었습니다.
드디어 획득
그래서 시행 착오하면서 어떻게든 한 번에 페이지 수를 얻을 수있었습니다.
이쪽을 복사해서 사용해 주시면, 똑같이 확인할 수 있을 것. (토큰만 변경하십시오)
| curl url="https://qiita.com/api/v2/authenticated_user/items?page=1&per_page=100" headers="{'Authorization': 'Bearer <<取得した Tokenを入力>>'}" output=text
| makemv delim="rendered_body" reponse
| mvexpand reponse
| rex field=reponse "\"id\":\"(?<id>[0-9a-z]+)"
| table id
| where isnotnull(id)
| map maxsearches=50 search="| curl url=\"https://qiita.com/api/v2/items/$id$\" headers=\"{'Authorization': 'Bearer <<取得した Tokenを入力>>'}\" output=json | table id title created_at page_views_count likes_count"
감상
리포트 기능으로 매일 취득해 보존해 가면, 액세스 추이가 보여 흥미롭다고 생각했습니다만, 그것은 또 기회에.
Reference
이 문제에 관하여(Splunk Curl App에서 Qiita의 페이지보기 수를 확인했습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/maroon/items/266e74bbdc39bfe91e9f텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)