Java 생태계가 발전하고 사용자 성능 요구 사항이 향상되면서 새로운 유형의 개발 도구가 등장했습니다. 빠르게 변화하는 환경에서 신속한 배포에 필요한 오류 추적 요구 사항을 충족하고 기존 방법보다 더 깊은 수준에서 애플리케이션 동작을 관찰할 수 있습니다. 최근 소프트웨어 분석업체 타키피(Takipi)는 이런 도구 5가지를 정리해서 소개했다.
Raygun은 애플리케이션 예외를 추적하기 위한 웹 기반 오류 관리 시스템입니다. Java, Scala, .NET, Python, PHP 및 JavaScript를 포함한 다양한 데스크톱, 모바일 및 웹 프로그래밍 언어를 지원합니다. 주요 기능은 다음과 같습니다.
버그 그룹화 - 동일한 버그가 여러 번 나타납니다. 그룹 내에서 동일하게 표시됩니다.
전체 텍스트 검색 - 오류 그룹 및 수집된 모든 데이터를 검색할 수 있습니다.
앱 활동 보기 - 오류 그룹의 모든 작업이 모든 팀 구성원에게 표시됩니다. , 상태 업데이트, 댓글 등
영향을 받는 사용자 - 각 버그의 영향을 받는 사용자 수
외부 통합 - Github, Bitbucket, Asana, JIRA, HipChat 대기.
Sentry는 실시간 이벤트 로깅 및 집계를 위한 웹 기반 오픈 소스 솔루션입니다. 지원되는 언어는 Ruby, Python, JS, Java, Django, .NET 등입니다. 주요 기능은 다음과 같습니다. :
새 배포의 영향을 실시간으로 볼 수 있습니다.
오류로 인해 사용자 액세스가 중단되면 Sentry 로그를 사용하여 해당 사용자에게 지원을 제공하고 액세스 복원을 도울 수 있습니다.
사기 탐지 및 방지 - 예를 들어 구매 횟수와 인증 횟수가 정상 범위를 초과하면 Sentry에서 알림을 보냅니다.
GitHub, HipChat, Heroku 등을 통합할 수 있습니다.
Takipi는 Java 에이전트를 사용하여 코드 분석을 수행하고 코드 변경 사항을 실시간으로 추적하는 SaaS(Software as a Service) 모델입니다. 대부분의 분석 작업은 Java, Scala, Clojure, Groovy, JRuby, Jython 등을 포함한 JVM 언어를 지원하는 클라우드에서 수행됩니다. 주요 기능은 다음과 같습니다.
탐지 - 모두 캡처되고 감지되지 않음 예외, HTTP 및 로그 오류
우선순위에 따라 정렬 - 클러스터 전체에서 오류가 발생하는 빈도, 새 코드 또는 수정된 코드가 포함되어 있는지 여부, 빈도가 증가하는지 여부
분석 - 보기 특정 코드 및 변수 상태;
설치가 용이합니다.
시스템 리소스 오버헤드가 2% 미만입니다.
Airbrake는 사용자에게 오류 세부 정보를 기록하는 대시보드 및 애플리케이션별 보기가 있는 웹 기반 인터페이스를 제공합니다. 지원되는 언어에는 Ruby, PHP, Java, .NET, Python, Swift 등이 포함됩니다. 기능은 다음과 같습니다.
오류 유형, 사용자 및 환경 변수에 따라 그룹화된 자세한 스택 추적 정보
팀 생산성 향상 - 복잡한 정보에서 중요한 정보 필터링
팀 협업 - 버그를 일으킨 멤버와 버그를 수정하는 멤버를 확인하세요.
외부 통합 - HipChat, GitHub, JIRA, Pivotal 등을 포함한 30개 이상.
StackHunter는 현재 베타 버전인 자체 호스팅 Java 예외 추적 도구입니다. 개발자에게 예외를 알리고 문제를 더 빠르게 해결하는 데 도움을 줄 수 있습니다.
모든 예외는 단일 자체 호스팅 웹 인터페이스에서 볼 수 있습니다.
스택 추적 데이터를 수집합니다. 예외, 영향을 받은 사용자, 영향을 받은 세션 등과 같은 상황 정보
예외가 발생하면 즉시 경고 이메일을 보냅니다.
근본 원인에 따라 예외를 해제합니다.
또한 언급할 만한 또 다른 도구는 Fedora 생태계의 ABRT입니다. 이는 자동 버그 감지 및 보고 도구입니다. 위의 다섯 가지 도구와의 차이점은 사용자가 애플리케이션 개발자이자 애플리케이션 사용자가 될 수 있다는 것입니다. 그러나 Java 예외에 대한 지원은 아직 개념 증명 단계에 있습니다.