Page tree
Skip to end of metadata
Go to start of metadata

엘라스틱스택(Elastic Stac)은 데이터를 시각화하고 쉽게 탐색하기 위해 가장 많이 사용되는 오픈소스 프로젝트이며 엘라스틱 서치(Elastic Search), 로그스태시(Logstash), 비츠(Beats), 그리고 키바나(Kibana)로 구성되어 있습니다.  카테노이드는 동영상 시청 데이터의 분석과 시각화를 위해 엘라스틱서치와 키바나를 활용하고 있으며 고객사 용 전용 대시보드(Dashboard)로 분석결과를 제공하고 있습니다. 이와 관련한 예시를 몇 가지 참조합니다.  (운영 개발 관점에서 이해될 수 있는 자세한 설명은 최대한 배제합니다.)

  • 조금 더 덧붙이면서비스 결과로 생성된 로그 데이터를 재처리한 뒤 엘라스틱 서치에 저장하고키바나로 원하는 분석항목에 대한 시각화를 제공하는데, 우선 고객사와의 커스텀 로그 키 (custom log key)와 관련 사전협의와 컨설팅이 필요합니다. 

  • 키바나는 오픈소스 기반 분석 및 시각화 도구입니다단순한 시각화 솔루션이라고 말할 수도 있지만이를 충분히 활용하기 위해서는,

    • 엘라스틱 서치를 반드시 실행해야합니다. 따라서 키바나 만을 언급할 수는 없습니다. 또한 엘라스틱스택에 대한 스터디도 필요합니다.  

    • 물리적인 시스템 리소스 관점에서는 in-house 가능하지만 로그데이터 재처리를 위한 컴퓨팅 리소스는 일정 수준 규모가 필요합니다. 

    • 무엇보다도 대용량의 raw data이 입수와 재처리, 그리고 동영상 기준 분석항목에 대한 커스터마이징에 대해 고민해야 합니다. 

(출처: https://www.edureka.co/blog/elk-stack-tutorial/)

사전 협의된 다양한 커스텀 분석 리포트가 생성되며 용량또한 방대하기 때문에 기존 표준화된 콜러스 콘솔 내 통계 리포트 페이지에서는 제공하지 않습니다. 또한 쿼리 조건 검색을 활용한 빠른 피드백을 활용하기 위해서는 키바나 기준  전용 페이지를 권장하고 있습니다. 

Graph - 서비스도메인, 서비스 단위별 동영상 요청 수와 현황

  • 보통 '트래픽(traffic)'은 Mbps 단위로 표현되는 네트워크 사용량을 의미하지만 동영상 관점에서는  동영상 요청수 (request)로 확인하는 것이 보다 직관적입니다. 
  • 서비스 계정 키를 기준으로 시간대별 추이를 제공합니다. 
    • 콜러스는 서비스 계정키-참조:동영상 연동 키(key)- 단위로 최소 서비스 단위를 구분하며 고객사는 복수의 서비스 계정키를 생성할 수 있습니다. 또한 각 서비스계정키는 독립적인 비디오 플랫폼 워크플로우를 가집니다. 
    • B2C 대상으로 복수의 서비스 도메인을 운영한다면 서비스 계정 및 계정 키를 각각 설정하는 경우가 있습니다. 

  • 서비스 계정키 단위 아래에는 복수 개의 서비스 채널(channel)이 생성될 수 있으며  (참조: 채널, 배포채널 | Channel  ) 고유의 채널 키를 가집니다. 

  • 각 채널에는 그룹화되어 서비스되는 동영상은 각각 유니크한  미디어 컨텐츠 키를 부여받으며, 이 기준으로 개별 동영상 별 요청수를 확인할 수 있습니다.  

    • 참조: 동영상 연동 키(key) 

    • 물론 키바나에서는  암호화된 영문, 숫자의 키(KEY) 값을 보여주지만 고객사의 CMS에서는 API를 통해 제목과 Key를 맵핑하여 어떤 콘텐츠인지 확인할 수 있습니다. 

Custom Log key - 콘텐츠별 고유 코드를 반영한 분석항목 

  • 과목, 강좌, 강사 별 요청수 항목이 비즈니스 모델에서 큰 의미를 가질 경우 별도 코드화 되며 고객사의 정책에 의해 원하는 대로 커스텀 로그 키를 생성할 수 있습니다. 
  • 해당 분석 항목은 커스텀 로그 키(custom log key)로 정의되어 아래와 같이 지원되며, Developer Guide에서 확인할 수 있습니다. 


CUSTOM LOG

개요

Kollus Videogateway 접근 로그를 기록하는 시점에, 고객사가 Videogateway에 접근할때
부가정보를 추가하여, Kollus의 사용자 접근 로그에 데이터가 남겨지도록 하여 별도 제공되는
서비스를 통해 해당 로그를 분석할 수 있는 기능을 제공하기 위한 참고 문서입니다.

VIDEOGATEWAY 요청 방식

접근 로그에 다음과 같은 방식으로 사용자 정의 로그 키를 추가할 수 있습니다.


http://v.kr.kollus.com/MEDIA_CONTENT_KEY?custom_log_key0=...&custom_log_k
ey9=...

CUSTOM LOG KEY

  • 사용자 정의 로그 키는 custom_log_key0부터 custom_log_key9까지 총 10개를

    사용할 수 있습니다.

  • 각 필드의 길이가 10바이트를 초과하는 경우 별도 협의하여 주십시오.

  • custom_log_key의 값은 urlencode하여 사용해주시기 바랍니다.

Client 정보 - 보다 상세한 사용자 환경 정보 

  • 보통 사용자 환경 분석 결과는 간단하게 요약되어 제공되기도 합니다. Device 단위로는 PC, Tablet, Mobile로, OS는 Windows, IOS, Android로 브라우저(Browser)는 제공하지 않거나 OS 분석범위에 포함되기도 합니다. 

  • 필요에 따라서는 매우 상세한 사용자 환경 정보가 필요할 수 있습니다. 향후 서비스를 위한 인사이트를 위해서, 유니크 사용자에 대한 정보가 추가로 필요하다면 User Agent정보를 포함한 raw-data를 가지고 재처리가 필요할 수도 있습니다. 

Events - Raw Data 로 보다 상세한 분석 데이터 확보  

  • 좌측의 파란색 필드는 여러가지 커스텀 로그 키(custom log key)항목입니다. 해당 항목을 체크하여 조합하면서 다양한 분석 테이블 리포트를 생성할 수 있습니다. 이는 키바나의 장점을 그대로 수용하면서 동시에 분석데이터를 보다 가치있게 활용하기위한 예시입니다. 
    • timestamp: 이벤트 로그가 발생한 시간입니다. 
    • ip_address: 시청자가 접속한 IP 정보입니다. 
    • params.cpk: 콜러스 전용 비디오 플레이어 (Kollus Player HTML5-Security) 와 콜러스 플랫폼이 적용된 서비스 계정키를 말합니다. 
    • useragent.name: 브라우저(browser)단위 정보입니다. 
    • useragent.os_name: OS단위 정보입니다.  
    • useragent.device: 시청자가 사용하는 디바이스 단위 정보입니다.  
    • geoip.country_code2 / geoip.city_name: IP의 지역 정보이며 국가와 도시 구분으로 KRNIC의 정보를 기초로 합니다.   
    • params.uid: 접속한 시청자의 실제 ID입니다. 

  • 키바나의 장점 중 하나는 빠른 검색 자유도 입니다. 리포트 테이블 내 필드 중 params.uid를 선택할 경우 해당 시청자 행태와 관련된 다양한 분석항목들 (접속시간, 횟수,  콘텐츠, 도메인, 사용자 환경 등)을 바로 확인할 수 있습니다.