반복영역 건너뛰기
주메뉴 바로가기
본문 바로가기
제품/서비스
EMS Solution
Features
클라우드 관리
AI 인공지능
서버관리
데이터베이스 관리
네트워크 관리
트래픽 관리
설비 IoT 관리
무선 AP 관리
교환기 관리
운영자동화
실시간 관리
백업 관리
APM Solution
애플리케이션 관리
URL 관리
ITSM Solution
서비스데스크
IT 서비스 관리
Big Data Solution
SIEM
Dashboard
대시보드
Consulting Service
컨설팅 서비스
고객
레퍼런스
고객FAQ
문의하기
가격
자료실
카탈로그
사용자매뉴얼
회사소개
비전·미션
연혁
2016~현재
2000~2015
인증서·수상
투자정보
재무정보
전자공고
IR자료
새소식
공고
보도자료
오시는 길
채용
피플
컬처
공고
FAQ
블로그
열기
메인 페이지로 이동
블로그
최신이야기
블로그
최신이야기
사람이야기
회사이야기
기술이야기
다양한이야기
'대한민국 SW기업경쟁력 대상' 우수상 수상
[행사] 2023년 2월 BB데이
최순정
2023.02.23
페이스북 공유하기
트위터 공유하기
링크드인 공유하기
블로그 공유하기
에이프리카와 2023년 상반기 공개채용
2월 BB데이가 22일 수요일에 열렸습니다!
지난달에 이어 이번 2월에도 신입 사원이 입사해 같은 팀 동료들과 함께 참석했습니다.
최근 인수한 자회사 에이프리카에 계시던 선근님도 브레인저들을 보기 위해 한 걸음에 달려왔어요.
선근님은 주니어 브레인저들과도 서슴없이 소통하고 있어, 20대 브레인저들도 선근님과 이야기 나눌 기회가 자주 있습니다.
이날은 늘 먹던 치킨 대신 찜닭으로 대체해달라는 의견이 있어,
찜닭과 함께 지난해 인기 있었던 양장피도 함께 준비했어요.
그리고 BB데이에 빠질 수 없는 맥주와 각종 술!
특별히 40도가 넘는 안동 소주로 신입 사원을 격하게 환영해 줬어요.
(신입 사원은 마시지 않고, 팀장을 비롯한 동료들만 마셨다는 후문
)
이날은 특별히 팀을 나눠 여러가지 게임을 진행했습니다.
첫 번째로, 넌센스 퀴즈!
넌센스 퀴즈는 젊은 피로 뭉친 인프라웹팀에서 대부분 맞혔어요.
두 번째는 회사와 관련된 퀴즈!
구성원 인원 수 맞히기와 5초 안에 다른 팀원 5명 이름 말하기를 했는데요.
이번 퀴즈는 인프라코어팀에서 많은 점수를 획득해갔어요.
세 번째는 사자성어 이어 말하기!
다들 혹여나 본인이 못 맞히지 않을까라는 긴장감
속에 게임이 진행됐는데요.
ITSM팀 제외, 다른 팀 모두 한 번에 성공했습니다.
이날 하이라이트였던 마지막 게임!
30점을 걸고, 각 팀 대표로 한 명 씩 나와 까나리커피 속 진짜 커피
를 찾아봤습니다.
사진 보시면 누가 커피인지 바로 알아채셨죠?
30점 대역전극의 주인공은 바로...
꼴찌를 달리고 있던 ITSM팀!
가장 먼저 원샷하고 승리의 표정
으로 다른 브레인저를 보고있는 ITSM팀장 희찬님.
한편,
까나리커피를 뿜을 두 브레인저를 사진에 담기 위해 대기했지만
게임 시작 전, "까나리도 참고 마시면 경품줍니다!"라는 말에 두 명의 브레인저도
모두 원샷을 해버렸습니다.
게임 시작 전 살짝 맛본 까나리커피는 도저히 마실 수가 없는 상태였는데......(독한 것들
)
살신성인의 모습을 보여준 두 브레인저 덕분에 모두 웃음을 터트리며 즐거운 시간을 보냈어요. (뒤에서 계속 웃고 있는
파란 옷의 청룡님)
이렇게 2월 BB데이에서도 웃고 즐기며 한 달간의 스트레스를 풀고,
3월에도 열심히 달릴 준비를 해봅니다.
3월 BB데이에서 만나요!
#브레인즈컴퍼니
#사내행사
#BB데이
최순정
경영기획실(PR매니저)
브레인즈컴퍼니의 소식, 조직문화, 브레인저 이야기를 대내외에 전파하고 있습니다.
필진 글 더보기
목록으로
추천 콘텐츠
이전 슬라이드 보기
6개월&20년 차 개발자들이 바라보는 브레인즈컴퍼니
6개월&20년 차 개발자들이 바라보는 브레인즈컴퍼니
브레인즈컴퍼니는 전체 인력의 약 2/3가 개발자로 구성돼 있습니다. IT기업인만큼 개발자의 역할이 특히 중요한데요. 그래서 ‘브이(브레인저 이야기)’의 첫 번째 편은 개발자 두 분을 모시고 진행해 봤습니다. 입사 6개월 차의 주니어 개발자 이재용님과 입사 20년 차를 내다보고 있는 시니어 개발자 김기상님을 만나봤는데요. 20년의 경력 차이 만큼 브레인즈컴퍼니를 바라보는 시각에 어떤 차이가 있을지, 또 개발자로서 철학은 어떻게 다른지에 대해 이야기를 들어보겠습니다. ------------------------------------------------------------------ Q. 반갑습니다, 자기소개 부탁드려요. 기상님: 안녕하세요. 저는 개발 1그룹 인프라코어팀 부장으로 일하고 있는 김기상입니다. 2004년도에 입사했으니, 올해로 벌써 19년 차가 됐네요. 재용님: 안녕하세요. 저는 개발 2그룹 ITSM팀 사원으로 일하고 있는 이재용입니다. 저는 입사한 지 막 6개월 차 정도 된 갓 신입이네요. (웃음) Q. 두 분의 업무를 구체적으로 소개해주세요. 기상님: ZENIUS EMS의 매니저 에이전트를 담당하고 있습니다. ZENIUS EMS는 브레인즈컴퍼니의 메인 브랜드로, 서버, 네트워크, DBMS, 부대설비와 같은 다양한 IT 인프라를 하나의 플랫폼에서 통합 관리하는 소프트웨어인데요. 인프라코어팀에서는 서버에 들어가는 프로그램을 개발 및 관리하는 일을 하고 있습니다. 통일된 라이브러리를 제공해 개발자들이 좀 더 편하게 일하고 생산성을 높일 수 있도록 하고 있습니다. 재용님: ITSM팀에서 백엔드 업무를 담당하고 있는데요. ZENIUS나 대시보드와 같은 회사 주 제품을 보조하기 위한 프로그램을 개발하는 작업을 하고 있습니다. Q. 브레인즈컴퍼니에 입사하게 된 계기가 어떻게 되시나요? 기상님: 2003년도 초에 전문연구요원으로 일하기 위해 회사를 알아보고 있었어요. 그때 마침 브레인즈컴퍼니가 연구 병역 특례 업체로 지정돼 있었기 때문에 연구소장님의 소개로 입사하게 됐습니다. 재용님: 저는 정말 운 좋게 입사하게 된 케이스인 것 같아요. 개발자라는 직군에 관심이 있어 학원을 다니고 있다가 면접 경험을 쌓기 위해 지원했는데 합격했습니다. Q. 그동안 브레인즈컴퍼니에서 개발자로 일해오면서 가장 기억에 남는 업무 성과가 무엇인가요? 기상님: ZENIUS EMS를 만든 것. 초창기 ZENIUS 3.0을 사용할 땐 여러 개의 모듈을 각기 다른 프로그램으로 관리하고 있었어요. 그걸 보완하기 위해 라이브러리를 만들어 여러 개의 모듈을 한 프로그램으로 관리할 수 있게 구현해냈어요. 창립 초기에 제가 그 스타트를 끊었다는 것이 뿌듯했고, 큰 성취감이 들었어요. 재용님: 저는 ITSM에 로그인했을 때 그래프를 화면에 띄우는 일을 하고 있어요. 프론트 단에 데이터를 보내주는 작업인데, 재미있게 일하고 있습니다. Q. 반대로 업무를 하면서 가장 힘들었던 점은요? 기상님: 버그 처리가 가장 힘들어요. 이용자들의 버그 문의가 오면 기술을 지원해야 하는데, 문제가 있는 버그를 빨리 알아채지 못할 때 스트레스를 받아요. 재용님: 놓치는 게 있을 때요. 제가 꼼꼼한 성격은 아닌 탓에 실수를 하는 것 같아요. 동료들은 오히려 괜찮다고 위로하고 격려해주는데, 그럴 때면 미안한 감정과 함께 더 잘해야겠다는 생각이 들어요. Q. 분위기를 바꿔서 이번에는 일 이야기가 아닌 편한 이야기를 나눠볼게요. 브레인즈컴퍼니에는 다양한 복지제도가 있는데요. 기상님은 어떤 것이 가장 기억에 남으세요? 기상님: 해외 연수 제도요. 저는 첫 해외 연수로 세부에 갔었어요. 마음 맞는 동료와 함께 바다를 거닐 수 있다는 것 자체가 너무 행복했습니다. ‘미국 연수’도 기억에 남아요. 2014년에 갔던 미국 연수에서는 구글과 드롭박스, 코트라 등을 견학하기도 했어요. 코로나 터지기 직전에는 영국 연수도 갔었어요. 세계 최대 보안 전시 중 하나인 Infosec에 저희 회사가 참여했었죠. 해외 연수 외에 ‘패밀리 데이’라는 행사도 브레인저들에게 인기가 많습니다. 패밀리 데이는 직원 가족들이 함께 모여 진행하는 행사예요. 아이들을 위해서 행운권 추첨을 통해 선물을 주기도 하고, 함께 운동회도 하며 시간을 보냈던 게 생각 나네요. 이렇게 돌아보니, 브레인즈컴퍼니는 참 많은 혜택을 주는 회사네요. (웃음) Q. 요즘은 코로나로 연수 제도를 중단하고 있죠. 재용님 많이 아쉬워하시는 것 같은데요? (웃음) 대신 브레인즈컴퍼니, 이것만은 자랑하고 싶다! 하는 것이 있나요? 재용님: 연봉 인상과 좋은 동료. 이번에 전체적으로 연봉이 천만원씩 올라서 너무 좋았습니다. (웃음) 또 사내에 다양한 음료가 비치 돼있고, 아침을 제공해주는 것도 좋아요. 무엇보다 자랑거리는 좋은 동료 분들과 마음이 잘 맞아서 기분 좋게 출근한다는 것을 꼽을 수 있겠네요. Q. 동료분들 얘기가 나왔는데, 팀 내 분위기는 어떤가요? 기상님: "할 때는 하고, 놀 때는 놀자." 집중력을 요하는 일이다 보니 업무 중에는 독서실처럼 조용해요. 대신 점심시간이나 휴식시간에는 서로 편하게 이야기를 나누며 시끌벅적한 분위기를 만들어냅니다. 코로나 이전에는 라운지에서 게임도 즐기고 회식도 했었어요. 요즘은 한 달에 한 번씩(셋째 주 수요일) 저녁 시간에 같이 밥을 먹으면서 소통의 시간을 갖고 있습니다. 재용님: 분위기는 자유롭고 무엇보다 동료들이 인간적이에요. 일할 때 각자 자유롭게 노래를 듣는데 처음에는 신기했어요. 적응하고 보니, 개인만의 공간에서 자유롭게 일할 수 있는 환경이라 좋습니다. 팀 분위기는 타부서에 자랑하고 싶을 정도로 매우 좋아요. 업무 중 실수를 하면 미안한 감정부터 들 정도로, 팀원들 자체가 너무 착하고 좋은 분들이 많습니다. Q. 모두 즐겁게 일하고 계시네요. 앞으로 새로운 동료들이 팀에 합류하게 된다면 어떤 동료를 원하시나요? 기상님: 솔직하고 소통을 잘하며, 끊임없이 고민하는 개발자. 편견일 수 있지만, 개발자는 ‘은둔형’의 이미지를 갖고 있어요(물론 실제로는 그렇지 않은 사람도 많겠죠). 그런 성향을 가진 건 상관이 없지만, 의사소통에 문제가 되는 건 안돼요. 예를 들면, 코드에 문제가 있어도 성격 상 잘 말하지 않는 경우에 시간이 지나면 결국 잘못된 부분이 극명하게 드러나게 돼있거든요. 그래서 소통이 중요해요. 그런 상황에서는 솔직하게 말해줬으면 해요. 또 개발 공부를 할 때 좀 더 읽기 편한 코드나 예외 요소를 여러 각도에서 고려해 보는 자세가 필요하다고 생각해요. 재용님: 꼼꼼한 개발자요. 언어 하나를 빠뜨리면 프로그램 자체에 문제가 생기기 때문에 완전히 집중해서 노력하는 자세가 중요해요. Q. 최근 개발자 직군이 사회적으로 인기가 많은데요. 두 분은 개발자로 진로를 선택하게 된 이유가 있으신가요? 기상님: 적성에 잘 맞고 재미있어서요. 제 전공은 기계공학이었습니다. 당시 기계공학과에 ‘프로그램 개발’이라는 과 소모임이 있었는데요. 소모임에서 프로그램을 잘 다루시는 선배님들이 방학 기간에 멘토-멘티 형식으로 후배들을 가르쳐줬어요. 그 때 C언어, C++ 등을 배우다가 학부 연구소에 발탁이 됐어요. 로봇, 자동차와 같은 시뮬레이터를 만드는 ‘자동화 연구실’에서 일했고, 너무 재미있어서 자연스럽게 대학원까지 가게 됐습니다. 재용님: 개발은 흥미롭고 매력적인 직군이라고 생각해요. 저도 개발 관련 전공은 아니었어요. IoT 쪽이었는데, 코딩 수업을 들은 적이 있었어요. 그 때 코딩에 흥미를 느껴 학원까지 등록해서 다니다 보니 개발자가 됐습니다. Q. 기상님이 입사할 당시의 ‘개발’은 현재와 비교해 봤을 때 어떤 차이가 있나요? 기상님: 제가 입사할 당시의 개발은 ‘수동적인 업무’였습니다. 그 때는 SI성 사업이 주였어요. 하청업체의 위치에 있었다고 볼 수 있죠. 전산시스템을 필요로 하는 곳으로부터 하청을 받아, 시스템의 기획, 개발, 유지보수, 운영 등을 처음부터 끝까지 요구하는 대로 해야 해서 1~2년씩 파견을 나가기도 했어요. 그러다 보니 야근과 특근이 많았죠. 반면에, 현재는 능동적인 스타일로 바뀐 것 같아요. 이제는 개발자들에게 본인이 원하는 대로 다 맞춰 달라고 요구하지 않아요. 오히려 개발자들이 만들고 싶은 제품을 개발하고 업체에게 구입을 요구해요. 그러다 보니 자율적으로 일하는 분위기로 바뀌었고, 이전보다 훨씬 개발 환경도 좋아졌다고 생각해요. Q. 재용님, 요즘 젊은 세대 사이에서는 개발자에 대한 인식이 어떤가요? 재용님: MZ세대는 개발자를 이공계열 중에서도 가장 매력적이고 창조적인 직업이라고 생각하는 것 같아요. 기상님의 말을 들으니 개발 환경이 이전보다 능동적으로 바뀌어서 그런 것 같네요. 무에서 유를 창조해내고, 자신이 만든 웹사이트가 가시적으로 드러난 것을 사람들이 볼 때 성취감을 느껴서 개발자를 선택하는 20대 분들이 많더라고요. Q. 그럼 재용님, 브레인즈컴퍼니에 입사를 원하는 개발자를 위해 입사 과정과 함께 합격 꿀팁 부탁해요! 재용님: 서류 전형에서는 ‘객관성’, 면접은 ‘힘빼기’라고 생각해요. 저는 브레인즈컴퍼니에 총 두 번 지원했고, 처음에는 서류에서 탈락했어요. 개발자 분들이 자기소개서나 이력서를 쓸 때 자신만 이해할 수 있는 내용으로 서류를 작성하는 경우가 많아요. 개발에 대해 잘 모르시는 분들도 이해할 수 있게 객관적이고 구체적으로 쓰는 것이 중요하다고 생각합니다. 실제 상황이나 예시를 들면 더욱 좋고요. 면접은 모범적인 답이지만, 긴장하지 않고 말하는 것이 중요하다고 생각합니다. 브레인즈컴퍼니 면접 당시, 긴장을 많이 했더니 알고 있는 용어나 언어도 기억이 나지 않아 당황스러웠어요. 그 이후에 힘이 풀려 오히려 편하게 답변했더니, 유연하게 대처할 수 있었어요. 개발자 면접은 즉흥적인 문제 해결 능력을 요구하기 때문에 유연성이 필요합니다. 긴장하지 않고 힘을 빼고 임하시는 걸 추천 드립니다. Q. 마지막 질문 드릴게요. 두 분의 앞으로 목표와 계획이 궁금합니다. 기상님: 끊임없이 새로운 개발에 도전할 계획입니다. 개발 자체가 일로 다가오지 않게 하기 위해서는 계속해서 새로운 것에 관심을 가져야 한다고 생각해요. 가령, 제품 개발을 하다 보면 그 제품에만 집중해서 다른 보조 기술 개발은 못 보게 되는 경우가 생기는데요. 그럴 때마다 새로운 기술에 대한 호기심을 잃지 않고 도전해 나가는 것이 제 목표입니다. 재용님: 저는 아직 신입이니 개발 능력을 키우는 것이 목표이지 않을까요? 5년 후에는 특히 Back-end 쪽에서 자유자재로 프로그램을 만들어낼 수 있는 개발자로 성장해 있었으면 좋겠네요.
2022.08.04
장기근속자 인터뷰(2)_10주년
장기근속자 인터뷰(2)_10주년
<왼쪽부터 ITSM팀 정지은 부장, TC팀 정채린 차장, ITSM팀 박현철 차장, 프리세일즈팀 서종원 차장> Q1. 간단한 본인 소개 부탁 드려요. 정지은: 연구개발본부 ITSM팀 정지은입니다. 최근에는 Zenius Dashboard와 EMS 웹토폴로지 관련 업무를 하고 있습니다. 2021년은 재택근무로 한 해를 보냈고, 2022년도 재택근무로 회사 출근하는 날이 적지만 잊지 않아 주셨으면 좋겠습니다. 정채린: 저는 TC팀에서 일하고 있는 정채린입니다. 팀내에서는 프로젝트 구축이나 유지보수, 내부 업무 등 크고 작은 일들을 하고 있습니다. 취미와 특기, 스트레스 푸는 방법은 독서와 귀여운 거(이유준) 보는 일입니다. 박현철: 연구개발본부 ITSM팀에서 근무하고 있는 박현철입니다. ITSM BackEnd 파트를 담당하고 있습니다. 서종원: 브레인즈에서는 전략사업본부 프리세일즈팀 소속으로 일하고 있고요. 집에서는 귀여운 4살 아들을 둔 철 없는 아빠입니다. Q2. 근속 10주년 소감은? 정지은: 10년이 정말 빠르게 지나간 것 같습니다. 대리로 입사해서 현재 부장이라는 직급에 있네요. 아직도 부족한 면이 많아 계속 배워 나가고 있습니다. 앞으로도 잘 부탁드리겠습니다. 정채린: 벌써 입사한 지 10년이 넘었다는 사실이 놀랍기도 하고 시간이 참 빠르다는 생각이 듭니다. “첫 입사한 회사에서 2~30대 청춘을 보냈구나”라는 생각에 감회가 새롭습니다. 박현철: 입사한 지 얼마 되지 않은 것 같은데 시간이 빨리 가는 것 같습니다. 좋을 때나 힘들 때 늘 같이 지원하고 응원해 준 팀원들에게 감사드립니다. 앞으로도 잘 부탁드립니다. 서종원: 입사한 게 엊그제 같은데 벌써 10년이네요. 10주년이 기쁘기도 하지만, 점점 고인물이 되어간다는 느낌은 달갑지가 않네요. 고여서 썩지 않도록 노력해보겠습니다! Q3. 근속 10년 중 가장 기억에 남는 점은? 정지은: 최근 코로나로 회사 행사가 없지만 저는 운 좋게도 입사하고 나서 바로 사원 전체 해외연수도 몇 번 다녀왔고, 미국 연수도 다녀왔습니다. 친구들과 가는 해외 여행이랑은 다른 맛이 있고 물론 불편한 면도 있는 건 사실이지만, 일로만 만나는 회사 분들의 자유로운 모습을 보는 즐거움도 있었던 것 같네요. 정채린: 아무래도 2011~2022년 사이 결혼과 출산을 했으니, 그 시기가 가장 기억에 남습니다. 결혼기념일도 아마 회사 창립기념일이랑 같은 것 같기도 하네요. 지금은 퇴사했지만 친하게 지냈던 김과장님과 함께 갔던 싱가폴 해외연수도 기억에 남습니다. 박현철: 업무적으로는 입사 후 국민연금 프로젝트로 잠실에 파견 나간 일이 기억에 남습니다. 입사 후 첫 프로젝트에 정신 없을 때라 더 생각이 나는 것 같아요. 그 외에는 사내 첫 해외연수(세부)가 떠오릅니다. 서종원: 아마도 최근이지 않을까요? 파격적인 연봉 인상으로 주변에서 부러움의 대상이 됐습니다. 요 근래 회사 자랑 할 수 있어서 좋았습니다.^^ Q4. 10년 포상금 사용계획은? 정지은: 부모님 모시고 제주도로 호캉스를 떠나고 싶네요.^^ 정채린: 휴가를 가는게 일반적이겠죠. 가족과 즐거운 시간을 보내는데 사용하지 않을까 싶습니다. 박현철: 호캉스나 필요한 생활가전을 구입할까합니다. 최근 식기세척기에 관심이 많아져 구입을 고려하고 있습니다. 서종원: 아직은 코로나로 멀리는 못 가고 국내 어딘가 가족여행을 갈 거 같네요. 누가 좋은 곳 알고 있으시면 추천 좀 해주세요.^^
2022.12.22
옵저버빌리티 확보를 위한 대표 정보 소스 3가지
옵저버빌리티 확보를 위한 대표 정보 소스 3가지
지난 블로그에서는 옵저버빌리티가 기존 모니터링과 어떻게 다른지 비교해봤습니다. 간략히 되짚어보면, 옵저버빌리티란 IT 환경이 다양해지고 기업의 서비스가 점점 복잡해짐에 따라 빠르게 문제를 찾아 해결하기 위해 서비스의 내부 상태와 동작을 이해하는 능력입니다. 옵저버빌리티는 IT 인프라별로 어떤 것이 문제라는 기준을 중심으로 모니터링하는 기존 방식에서 벗어나 모든 데이터를 실시간으로 수집하고 분석하여 IT시스템의 근본 원인에 접근하고, IT 운영 전문가의 노하우를 바탕으로 각 메트릭별 상관관계를 분석해 미래의 장애를 예측하는 인사이트를 강조합니다. 이번 블로그에서는 옵저버빌리티 확보에 가장 기본이자 중요한 정보 소스인 로깅, 메트릭, 트레이싱을 중심으로 알아보겠습니다. 이 세가지 소스는 시스템의 정확한 모니터링을 보장하고, 문제가 발생할 때 무엇이 잘못됐는지 근본원인을 추적하고, 전체 기능을 개선하는 데 도움이 되는 방법들입니다. 물론 이 세가지 방법만으로 옵저버빌리티가 확보됐다고 할 수는 없습니다. 옵저버빌리티 확보를 위해서는 로깅, 메트릭, 트레이싱을 통합해 이벤트의 상관관계를 분석하고, 데이터 시각화로 사용자에게 인사이트를 제공하는 능력이 추가돼야 합니다. l Logging : 시스템 내에서 발생하는 이벤트를 인지하고 향후 분석을 위해 저장하는 프로세스 l Metric : 응답 시간 또는 오류율과 같은 시스템 성능을 설명하는 숫자 값 l Tracing: 개발자가 병목 현상과 성능 문제를 식별할 수 있도록 서비스 호출 경로와 시간을 추적하는 프로세스 Logging 로깅은 로그를 남기는 것으로 로그를 수집하고, 저장하는 프로세스입니다. 로깅은 시스템 동작을 이해하고 문제를 진단하는 데 필요한 것으로, 향후 분석을 위해 저장하는 데이터인 만큼 올바른 세부 기준에 따라 의미가 있는 로그를 추출하는 것이 필요합니다. 그리고 예를 들어 웹 애플리케이션에 문제가 발생한 경우 로그를 남기는데, 메트릭을 통해서는 이 문제를 발견할 수 없으므로 그래서 로그는 중요합니다. 로그의 수집은 간단한 텍스트 파일에서 ELK(Elasticsearch, Logstash, Kibana)처럼 정교한 프레임워크에 이르기까지 다양한 형태를 취할 수 있습니다. 그래서 로그는 정형화하기 어렵고 그 양이 방대함으로 로그를 수집, 저장하고 분석할 때 다음과 같은 사항을 유의해야 합니다. l 과도한 로깅은 스토리지 비용을 증가시키고 로그의 검색 효율을 떨어뜨릴 수 있습니다. 따라서 어떤 데이터를 기록하고, 어떤 데이터를 기록하지 않을지 필터링하는 것이 중요합니다. l 장기간 보관할 필요가 없는 로그 효율적인 로깅 시스템을 위한 로그 보관 정책이 필요합니다. l 로그에는 인사이트를 제공할 수 있는 모든 컨텍스트 정보가 포함돼야 합니다. l 로깅은 다른 프로세스에 영향을 미치지 않도록 비동기 방식이어야 합니다. l 민감한 데이터가 로그에 남겨지지 않도록 마스킹을 해야 합니다. 그럼 로그 분석을 통해 알 수 있는 정보는 무엇이 있을까요? l 시스템의 상태: 로그에는 어떤 액션을 수행했는지, 어떤 데이터가 처리됐는지, 또 어떤 오류가 발생했는지 등의 정보가 담겨 있으므로 이러한 정보를 분석해 시스템의 상태를 파악할 수 있습니다. l 이슈 파악: 로그에는 어떤 오류가 발생했고, 어떤 요청이 실패했는지, 어떤 리소스가 부족한지 등의 정보가 담겨 있으므로 이러한 정보를 분석해 이슈를 파악하고, 빠르게 대응할 수 있습니다. l 보안성 강화: 로그에는 로그인 시도, 권한 부여, 보안 이벤트 발생 등의 정보가 담겨 있으므로 이러한 정보를 분석해 보안 이슈를 파악하고, 보안성을 강화할 수 있습니다. Metric 로그가 텍스트라면 메트릭은 단순한 수치입니다. 메트릭은 시스템의 상태를 측정하고, 모니터링하는데 사용되는 숫자 측정값입니다. 조금 더 자세히 설명하면, 메트릭은 측정 항목을 정의하고 해당 항목을 수치로 측정해, 그 결과를 보고하고 시스템이 정상적으로 동작하는지 확인하거나 장애를 빠르게 감지하기 위한 소스입니다. 메트릭의 측정 대상은 CPU 사용률, 메모리 사용률, 네트워크 트래픽 등 인프라의 성능이나 초당 수신하는 요청수, 응답에 걸린 시간, 사용자에게 오류를 다시 보낸 응답 수 등 애플리케이션의 상태와 관련돼 있습니다. 메트릭을 통한 수집 가능한 범위는 모니터링 도구 사용 여부에 따라 달라집니다. 일반적인 방식은 에이전트를 이용해 모니터링 대상으로부터 데이터를 수집하는 것으로, 수집할 메트릭을 정의하기가 유연하고 성능이나 안정성 등의 이슈에 대한 정보도 수집할 수 있는 장점이 있습니다. 에이전트를 사용하지 않고 운영 체제나 애플리케이션에서 제공하는 메트릭 수집 API를 사용하는 방식도 있는데, 수집하는 메트릭이 비교적 제한적입니다. 단순히 메트릭을 수집하는 것만으로 시스템을 모니터링하기에 충분하지 않습니다. 메트릭 데이터를 잘 활용하기 위해서는 분석 방법이 중요한데, 분석을 위해서는 몇가지 단계를 거쳐야 합니다. l 먼저, 데이터를 시각화하여 쉽게 이해할 수 있는 형태로 변환해야 합니다. 차트나 그래프, 대시보드 등을 통해 데이터의 패턴과 추세를 파악할 수 있으며, 시스템의 상태를 실시간으로 모니터링할 수 있습니다. l 다음으로, 데이터를 분석하여 시스템의 문제를 식별합니다. 예를 들어, 응답 시간이 지연되는 경우, 이를 발생시키는 주요 요인을 파악하여 시스템을 개선해야 합니다. 이를 위해 데이터를 세분화하여 요소를 파악하고, 문제를 식별하는 데 도움이 되는 경향성을 찾아야 합니다. l 마지막으로 이전 데이터와 비교하고 평가에 활용합니다. Metric 데이터를 분석할 때는 이전 데이터와 비교하여 시스템의 개선 정도를 파악하는 것이 중요하고, 이를 통해 시스템의 성능 개선 여부를 판단하고, 추가적인 개선 방안을 모색할 수 있습니다. Tracing 트레이싱은 분산 시스템에서의 서비스 호출 경로와 시간을 추적하는 기술입니다. 즉, 서비스 간의 호출 관계와 시간 정보를 추적해 각 서비스의 응답 시간을 파악하고, 이를 시각화해 병목 현상을 파악할 수 있습니다. 트레이싱은 크게 세 가지 구성 요소로 이뤄져 있습니다. l Trace: Trace는 서비스 간의 호출 경로와 시간 정보를 담고 있는 데이터 레코드입니다. Trace는 Span과 Trace ID, Parent Span ID 등의 정보를 가지며, 각 Span은 서비스 내부에서의 호출 관계와 시간 정보를 담고 있습니다. l Span: 분산 추적에서 가장 기본이 되는 논리 단위로 여러 개의 span 이 모여 trace를 완성한다는 개념입니다. 각각의 Span은 작업이름, 시작 시간과 종료 시간, key value 형태의 tags 와 Logs, span contexts를 가지고 있습니다. Span contexts는 분산추적을 하기위해 Trace 구간에서 종속된 Span을 구별할 수 있는 Span id와 Trace id를 말합니다. l Collector: Collector는 Trace 정보를 수집하고 저장하는 역할로, Trace 정보를 수집하기 위한 에이전트와 수집된 Trace 정보를 저장하고 분석하기 위한 Backend로 이뤄져 있습니다. (출처: [MSA] OpenTracing, 분산추적(Distributed Tracing) 과 Span context, KSR의 저장소) 이렇게 옵저버빌리티를 구현하기 위한 로깅, 매트릭, 트레이싱 등 세 가지의 중요한 정보 소스들을 다루기 위해서는 여러가지 기술들이 조합되어야 합니다. 다음 블로그에서는 그와 같은 정보 소스들을 다루어 옵저버빌리티를 구현하기 위해서 널리 사용되는 대표적인 오픈 소스들을 알아보고 Zenius-EMS에서는 옵저버빌리티 향상을 위해서 어떤 기능들을 제공하고 있는지 살펴보겠습니다.
2023.04.19
다음 슬라이드 보기