티스토리 뷰

 

사용자의 다양한 환경에 작동하는 것을 확인하기 위한 로깅.

 

하이퍼 커텍트 

Ai기술을 바탕으로 새로운 사람을 연결하는 기능.

최근에 하쿠나는 1인 방송 서비스도 하고 있는데 좀더 쇼셜 기능을 추가.

시청자 1명을 초대하여 방송할 수 있는 스트리밍

 

 

성장

 

azar 매출은 점점 커져 2019년 전세계 5위까지!

그 원동력은 기술력

 

 

WebRTC를 최초로 사용화.

- 전 세계 어디서든 영상 통화 가능.

- 더 안정적 낮은 가격의 인프라

 

지금은 사진을 통해 이미지를 바꿔주는 기능을 시연중(예 아이유)

데이터를 직접 전송하지 않고 기기상에서만 돌아감.

 

개요

 

다양한 피쳐들을 적용하고 있고, 유저 행동을 분석하기 위한 데이터 파이프라인.

파이썬 기반의오픈소스를 사용하고 있어.

또한 데이터 전처리, 머신러닝에서 텐서블로우를 사용

 

수많은 앱들도 있지만, 대부분이 파이썬 백엔드로 개발중.

앞으로도 파이썬으로 개발 예정

회사 복지도 좋음

 


Azar WebView Logging

 

 

이준형 팀장 발표

 

로깅의 중요성

로깅의 중요성

점점 증가하는 개발 복잡도, 그에 반에 로깅을 제대로 하고 있지 않다!

 

문제점

장애가 나서 로그를 보려고 ssh접속하려고 하는데 안됨.

확인해보니 메모리가 부족. 다시 볼륨을 늘리고 보면 로그 데이터가 용량을 차지하고 있어.

 

ssr입장에서는 클라이언트 정보를 알 수 없어. 그래서 장고에서도 유저 정보를 알수 없어.

당연히 azar에서 에러가 나면 어떤 사용자가 어떤 경로를 요청했는지 알 수 없다.

 

목표

1. 로그를 중앙화

2, 모든것을 로깅

- 로깅만 보고 해결할 수 있도록

3. 커스텀 헤드 활용

- 이걸 통해 트랜잭션 레이어 구성 가능

- 유저 정보를 전달

4. TX 레이어 로깅

 

 

모든 것을 로그

세팅정보, 요청 정보 , 비전 같은 것은 마스킹 처리

심지어 로컬 환경에서도 로깅하는데, 디버깅에 사용하기 위함.

서버 유저로 구분하여 사용자별로 구분하여 처리.

인바운드, 아웃바운드 도 전부 로깅

 

커스텀 헤더

 

POST 바디 사용하다 헤더로 이둉

네트워크 의존성을 제거

통계적인 기능

- 파편화가 심한데, 의사결정하는 것은 다 수집하는 것이 좋다는 판단

- 정보 의존성 제거

 

트랜잭션 레이어

 

각 단계별 레이어를 추가. 헤더 값을 계속 포워딩을 함. 

이 정보를 저장해서 로깅 정보를 통해 파악 가능

 

 

 

장고 로깅

requst_finsished 시그널을 사용

 

 

리퀘스트 라이브러리를 많이 사용하는데 타임아웃 옵션을 적용

예외처리를 통해 정상적으로 처리 

케이스별로 따로 따로 처리 가능

 

 

개선점

디버깅 시간이 극적으로 줄어듬

문제를 정확히 파악 가능

장애 대응에 큰 도움이 됨,

타 팀과의 의존성이 많이 제거됨

 

배운점

로깅은 정말 중요하다.

TMI 설정은 필요없어 보이지만 디버깅시 유일한 희망

로깅 전략은 프로젝트 매우 초기에 해야 한다.

우리팀이 할 수 있는 것은 우리팀이 하자.

 

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함