본문 바로가기

카테고리 없음

AWS Lambda의 서버없는 코드를 라이브 (프로덕션시)에서 디버깅 할 Rookout 디버깅 도구

출처 : https://jp.techcrunch.com/2018/06/07/2018-06-04-rookout-releases-serveless-debugging-tool-for-aws-lambda/

 

 

AWS Lambda 같은 서버 레스 컴퓨팅 서비스의 좋은 점은 서버 자체를 추상화 해 버리는 것이다. 이를 통해 개발자는 아래에있는 인프라를 신경 쓰지 않고 응용 프로그램을 만들 수 있지만, 그러나 몇 가지 문제도 발생하고있다. 정적 서버가 눈앞에 없으면 프로그램을 어떻게 프로덕션 상태에서 디버깅 할 것인가? 이스라엘 Rookout 는 최신 릴리스에서이 문제를 해결했다.

회사는이를 서버리스 코드에 "브레이크 포인트"를 표시하여 실현했다. 그로 인하여 Rookout는 서버없는 코드에 대한 개발자가 정의한 정보를 수집 할 수 있으며, 응용 프로그램이 서버없는 환경에서 실제로 움직이고있는 경우에도 문제를 알아낼 수있다.

이런 '추적'라는 기능은 기존의 응용 프로그램 디버깅에 자주 사용되지만, 서버없는 응용 프로그램은 매우 어렵다. 그것은 응용 프로그램이 그 위에 움직이고있는 영구적 인 기계가 거기 없기 때문이다, 그리고 Rookout의 CEO Or Weis는 말한다.

Rookout 서버 레스 디버거. 화면 하단의 정보가 AWS Lambda 위에서 움직이는 디버깅 코드 인사이트를 개발자에게 제공한다. 사진 제공 : Rookout

"즉 서버 레스는 소프트웨어가 새로운 환경에서 어떻게 움직이는 지 예측하기가 매우 어렵다. 원래 소프트웨어가 실제로 어디에서 움직이고 있는지 모르고, 그래서 프로덕션 단계에서 어떻게 움직이는지도 거의 예측할 수없는" 와 Weis는 말한다.

그의 말에 따르면 지금까지 유일한 방법은 코드 중에 로그 라인 (로그 출력 행)와 SDK 호출을 많이 쓰는 것이 었는데, 그러면 그 관리 또한 난소 작업되기 때문에 Rookout로는 처음 에서 그것을 피하고 싶었다. 오히려 회사는 코드에서 일어나고있는 것을 알 수있다 / 보인다위한 인터페이스를 제공함으로써 개발자가 서버없는 환경에서 움직이고있는 라이브 코드를 기존 응용 프로그램의 디버깅과 같은 방식으로 디버깅 할 수 있도록했다.

그 인터페이스에서 얻은 정보는 기존의 애플리케이션 성능 관리 도구 (New Relic 등)과 Splunk 같은 로그 관리 도구 PageDuty 같은 경고 도구 등과 공유 할 수있다. 또는 그 정보에서 직접 코드의 문제를 발견하고 수정하는 것이 가능한 경우도있다.

서버리스 컴퓨팅은 서버가 없다는 의미는 아니지만 응용 프로그램을 이동 전용 서버는 않는다. 벤더가 제공하는 서버가 아닌 응용 프로그램이 발하는 이벤트 트리거에 대응하는 필요한만큼의 서버 자원이다. 이벤트가 발생하면 그 코드가 움직이고 반면 고객은 과금된다. 서버 본체를 할당하고 그 위에 애플리케이션을 구동 (움직이지 않아도!) 요금을 지불하는 기존의 개발 방식과는 매우 대조적이다. 서버 레스에서도 코드를 움직이는 것은 서버이지만, 그것은 벤더 것이므로 사용자는 과금되지 않는다. 사용자 (개발자)가 부과되는 것은, 발생한 이벤트에 대해 실제로 코드를 달렸다만큼 뿐이다.

저작자표시 비영리