소규모 IT 관리자분들께 권해 드립니다. 현재 운영하는 시스템의 성능을 실시간으로 모니터링하고 문제가 발생하였을때, 이메일 또는 메신져 등으로 알림을 받을 수 있습니다. 웹사이트 모니터링도 가능합니다. 무료로 3대까지 등록해서 사용할 수 있으니, 많은 도움이 되었으면 좋겠습니다.
WENSYDATA : http://wensydata.com
WENSY
wensydata.com
Getting Started
Overview
WENSY APM은 Light weight 소프트웨어로 설치형 성능 모니터링 프로그램입니다. Agent는 호스트 서버에서 다양한 메트릭의 성능데이터를 수집하고 통합하여 API를 사용하여 WENSY Analysis System 으로 데이터를 전달합니다. WENSY Analysis System은 Rule base 알고리즘을 사용하여 시스템의 이상 유무를 판단하고, 만약 시스템에 문제가 있을시 메일, 또는 메신져 등으로 사용자에게 경고를 알립니다. 또한 웹 대시보드에서 실시간 모니터링 상태를 다양한 차트 데이터로 확인할 수 있습니다.
· Inquiry : info@wensydata.com
Start
WENSY를 사용하기 위해서는 회원가입이 필요 합니다. (http://apm.wensydata.com)
Installation
Agent는 호스트 서버에 직접 설치하며, Windows 플랫폼에서 실행 됩니다. (Download: http://www.wensydata.com/files/wensy.zip)
· .Net Framework 4.0 Later
· Windows Server 2008 Later
· IIS Server 7.0 Later (Web 서버 모니터 요구사항)
· SQL Server 2005 Later (SQL 서버 모니터링 요구사항)
Configuration
WENSY Agent의 기본 구성 파일은 WensyConfig.xml 입니다. Agent를 실행하는데 필요한 API 키를 입력 합니다. 설정 파일을 문서 편집툴을 사용하여 사용하여 아래 예제처럼 발급 받은 <PRODUCT_KEY>를 등록 합니다. <PRODUCT_KEY> 발급은 WENSY 대시보드의 SETTING페이지에서 호스트 서버 등록 후 발급 받을 수 있습니다.
<PRODUCT_KEY>Your Product Key</PRODUCT_KEY>
Run Agent
WENSY Agent는 콘솔 모드로 동작 됩니다. 관리자 모드의 콘솔을 실행하여 Wensy.exe 파일이 있는 경로로 이동하여 실행 합니다. Agent 실행 시 콘솔 창이 닫히지 않도록 주의 합니다. (콘솔을 실행 하는 계정이 Log off 되지 않도록 주의 합니다.) 아래 그림과 같이 SUCCESS 항목이 표시되면 정상적인 실행 중 상태 입니다.
Dashboard
대시보드는 수집된 데이터를 분석하여 호스트 서버의 상태를 실시간으로 보여주며, 수집된 메트릭을 다양한 방법으로 표현 합니다. 또한 데이터 분석 결과를 대시보드에서 확인할 수 있으며, 모니터링에 필요한 다양한 설정 페이지를 제공합니다.
WENSY
사용자가 등록한 전체 호스트 서버의 상태 정보를 쉽게 확인할 수 있도록, 호스트명, 서버 타입, 메트릭이 수집된 시간, 현재 서버의 상태를 4가지 컬러[Red (Critical), Orange (Warning), Yellow Green (Information), Green(Normal)]로 표시 합니다.
대시보드에서 호스트 서버를 클릭하면 다양한 성능 데이터를 실시간 차트로 확인 가능합니다. 현재 시간 기준으로 전,후 30분 데이터와, -1일, -7일의 데이터를 교차해서 표현 합니다.
ALERT MESSAGE
Agent에서 수집된 호스트의 성능 데이터를 분석하여 시스템에 이상이 있을 경우 해당 항목과 성능값을 표시합니다.
ANALYZE
Agent부터 수집된 호스트 서버의 성능 데이터를 분석하여 다양한 그래프로 리포트를 제공 합니다.
Performance Summary
Agent에서 수집된 성능 데이터 중 기본적인 필수 정보를 차트로 표현 합니다. 검색하려는 서버와 시간대를 입력하면 해당 시간대의 성능 데이터를 표시합니다.
Performance Detail
Agent에서 수집된 성능 데이터 전체 메트릭 정보를 차트로 표현 합니다. 검색하려는 서버와 시간대를 입력하면 해당 시간대의 성능 데이터를 표시합니다. Detail 페이지에서는 수백개 이상의 차트가 표시되므로 데이터 로딩에 오래 걸릴수 있으며, 데이터 조회기간을 최대한 작은 구간으로 사용하는것을 권장 합니다.
SQL Slow Query
호스트의 서버 타입이 SQL인경우, SQL Setting페이지에서 [SQL Slowquery] 항목에 [Enabled] 되어 있을 경우, 슬로우 쿼리가 수집되어 표시 됩니다.
SQL Dead Lock
호스트의 서버 타입이 SQL인경우, SQL Setting페이지에서 [SQL Deadlock] 항목에 [Enabled] 되어 있을 경우, 데드락이 발생한 경우 데드락이 발생한 쿼리 및 다양한 상태 정보가 수집되어 표시 됩니다.
SETTING
WENSY를 사용하는데 필요한 각종 설정 페이지입니다. 모니터링 서버 등록, 모니터링 웹 사이트 등록, 각종 Rule 설정, Alert 설정 등을 제공합니다.
Server Setting
모니터링 하려는 호스트 서버를 등록하고, 서버 타입을 정의 합니다. 서버 타입에 따라 수집되는 데이터의 종류가 다르게 동작 합니다. 서버 등록 후 발급된 [PRODUCT_KEY]는 WENSY Agent를 실행하는데 필요 합니다.
· Display Name : 대시보드에 표시할 서버 이름
· Display Group : 대시보드에서 표시할 그룹 이름
· Server Type : MS SQL경우 SQL 선택, Windows 만 모니터링시 Windows 선택
WebSite Setting
모니터링 하려는 웹사이트 URL을 입력 합니다. WENSY 서버에서 등록된 URL을 확인하여 응답이 없는 URL에 대해서 사용자에게 이메일 또는 메신져로 알림을 발송합니다.
System Alert
시스템에서 발생하는 각종 알림을 받을 사용자 및 방법을 등록 합니다. 시스템 장애 발생시 동일한 알림이 지속적으로 전송 되는 거을 방지 하기 위해 Alert 옵션을 설정 할 수 있습니다.
· 최근 5분 동안(Duration) 3번(Alert Count) 이상의 동일한 알림이 발생 하였을 경우, 60분 동안(Alert Interval) 동일한 알림 발송을 금지 합니다. 단, 해당 서비스가 정상 상태로 되었을때 정상 알림은 시간에 관계없이 발송 됩니다.
· Alert 발송은 Email 과 Slack 메신져 알림을 지원하고 있으며, Slack의 경우 사용자의 Slack webhook URL을 등록하면 됩니다. (Slack webhook URL : https://get.slack.help/hc/en-us/articles/115005265063-Incoming-WebHooks-for-Slack)
WebSite Alert
등록된 Web Site를 모니터링하여 발생하는 알림을 받을 사용자 및 방법을 등록 합니다. Web Site 장애 발생시 동일한 알림이 지속적으로 전송 되는 것을 방지 하기 위해 Alert 옵션을 설정 할 수 있습니다.
· 최근 5분 동안(Duration) 3번(Alert Count) 이상의 동일한 알림이 발생 하였을 경우, 60분 동안(Alert Interval) 동일한 알림 발송을 금지 합니다. 단, 해당 서비스가 정상 상태로 되었을때 정상 알림은 시간에 관계없이 발송 됩니다.
· Alert 발송은 Email 과 Slack 메신져 알림을 지원하고 있으며, Slack의 경우 사용자의 Slack webhook URL을 등록하면 됩니다. (Slack webhook URL : https://get.slack.help/hc/en-us/articles/115005265063-Incoming-WebHooks-for-Slack)
Rule Setting
Rule Setting은 수집된 성능 데이터에서 특정 항목의 성능 수치가 Rule 에 정의된 임계치 보다 높을때 이메일 또는 메신저 등으로 알림을 발송하기 위한 기준입니다.
(1) Initialize Rule은 WENSY에서 제공하는 값으로 초기화 합니다.
(2) Rule 을 적용할 항목 및 임계치를 설정 합니다.
· PObject Name : 수집된 성능의 Object Name
· Counter name : 수집된 성능의 Counter Name
· Instance Name : 수집된 성능의 Instance Name.
ü 특정 인스턴스 수집 : 인스턴스명 입력 (Ex : _Total)
ü 전체 인스턴스 수집 : * 입력
ü 인스턴스가 없는 항목 경우 : 빈칸
· Threshold : 알림을 발생할 기준 값을 설정합니다.
· Operator : 규칙을 설정합니다.
ü <, <=, >=, > : 수집된 성능값이 Threshold 에 설정된 값보다 크거나 작을때 알림을 발생합니다.
ü <%, <=%, >=%, >% : % 문자가 있을 경우 이전에 수집된 값을 기준으로 Threshold 값으로 백분율하여 알림을 발송할 기준 값으로 사용합니다. (Ex : 20, >=% CPU사용률이 20%이상 급등하면 알림을 발송 합니다.)
· Duration (/Sec) : 임계치 조건에 대한 성능값이 일정시간이상 지속되었을때 알림을 발송합니다.
· Alert Level : 해당 알림의 위험 수준을 정의 합니다.
· Mobile Alert : 이메일 또는 메진져로 알림을 받을 것인지 정의합니다.
· Enable : 해당 알림을 사용할지를 정의 합니다.
SQL Setting
SQL Setting은 등록된 서버의 타입이 SQL 일 경우에만 작동합니다. 각 항목에 따른 SQL 서비스를 확인하고, 문제가 발생하였을때 메일 또는 메신져로 알림을 발송합니다. 알림 설정은 [System Alert Center]에서 가능합니다.
· SQL Status : SQL Server가 정상적으로 응답할 수 있는 상태인지 모니터링 합니다. 10초 이상 무응답시 알림을 발송합니다.
· SQL Server Agent : SQL Server Agent Job 실패시 알림을 발송합니다.
· SQL Server Objects : Table, SP, View 등 오브젝트 생성(수정)시 알림을 발송합니다.
· Linked Servers : Linked Server의 연결상태를 모니터링 합니다.
· SQL Slowquery : 설정된 값(Second) 이상 느린 쿼리가 있을 경우 해당 쿼리 정보를 수집 합니다.
· SQL Deadlock : SQL Server에서 데드락 모니터링을 실행하여, 데드락 발생히 해당 정보를 수집 합니다.
· Availability Group : SQL Server AlwaysOn 구성시 Failover 를 모니터링 하여, Role 이 변경되었을때 알림을 발송합니다.
· SQL Job Object Check : SQL Server Job Agent 에 새로운 Job이 등록, 삭제, 수정되었을때 알림을 발송 합니다.
Monitoring Setting
Monitoring Setting 은 호스트에서 수집할 Metric을 정의 합니다. Metric의 정보는 Windows Performance Counter를 사용합니다. 현재 각 서버의 타입에 따라 특화된 Metric이 기본 설정 되어 있습니다.
User
모니터링 사용자를 등록, 삭제 할 수 있습니다. 같은 그룹내에 사용자를 추가하려면 반드시 이 페이지에서 사용자를 추가해야 합니다. (주의 : 일반적인 회원 가입을 통할경우, 다른 그룹으로 분류되어 모니터링에 추가할 수 없습니다.)
System Manager
호스트 서버의 모니터링 사용자를 지정합니다. 호스트에 할당된 사용자만 해당 서버를 모니터링 할 수 있습니다.