SQL 명령줄(command line)로 Alers(경고)를 설정하는 방법

Suresh Ramagiri -

경고 설정

경고를 설정하기 전에 cluster_name과 customer_name 전역 변수를 설정하기를 권장합니다. 다수의 클러스터를 가지고 있다면, 어느 클러스터가 경고를 보내고 있는지 확인하는 것이 도움이 됩니다. 또한, Clustrix 기술 지원(support.bot@clustrix.com)(권장 사항)으로 경고를 발송하는 경우 Clustrix 기술 지원이 어디서 경고가 발생하는지 확인하는데 도움이 됩니다. ${alerts_name}은 customer_name - cluster_name 으로 파싱하고 ${cluster_name}은 cluster_name 값을 표시합니다. 이러한 전역 변수를 다음과 같이 설정할 수 있습니다.

set global customer_name='<company name>';
set global cluster_name='<cluster identifier (usually similar to node hostnames)>';

ClustrixDB에는 경고를 설정하는데 사용하는 다음과 같은 두 개의 시스템 테이블이 있습니다. 
alerts_parameters 와 alerts_subscriptions.

 

alerts_parameters:

SQL> select * from system.alerts_parameters;
+-------------------+-------------------------------------------------------+
| name | value |
+-------------------+-------------------------------------------------------+
| body_max_chars | 50000 |
| email_subject | ${alerts_name} [${severity}] ${summary} |
| smtp_password | |
| smtp_security | |
| smtp_username | |
| smtp_port | 25 |
| smtp_sender | ${alerts_name} CLX Log Alert <noreply@clustrix.com> |
| smtp_server | smtpserver.mycompany.com |
| subject_max_chars | 100 |
| email_body | Severity: ${severity} |
Date: ${date} ${tz}
Host: ${host}
HWID: ${hwid}
Cluster: ${cluster_name}
Version: ${version}
Image Version: ${image_version}
Message: ${message} |
| email_encoding | quoted-printable |
+-------------------+-------------------------------------------------------+
11 rows in set (0.00 sec)

기본 서버 설정은 테스트 목적으로만 사용하되 프로덕션 설치시 변경해야 합니다.

새 SMTP 서버를 설정하려면 다음을 실행할 수 있습니다.

SQL> update system.alerts_parameters set value='smtp.foo.com' where name='smtp_server';

다른 alerter 설정을 변경하려면 단순히 행을 업데이트하십시오.

SQL> update system.alerts_parameters set value='foo' where name='bar';

 

alerts_subscriptions: 이 테이블에 경고가 발송되는 이메일 주소를 들어 있습니다.

SQL> select * from system.alerts_subscriptions;
+-----------------------------+ | address | +-----------------------------+ | support.bot@clustrix.com | +-----------------------------+ 1 rows in set (0.01 sec) 

일반 SQL 명령문으로 이 테이블에 삽입, 업데이트 또는 삭제할 수 있습니다. 

예를 들면 다음과 같습니다.

SQL> insert into system.alerts_subscriptions values ('support@clustrix.com');

주의: 설정이 변경되면 alerter가 설정을 다시 읽도록 알려줘야 합니다. 매개 변수를 수정한 후에 변경 사항을 적용하려면 다음을 실행해야 합니다.

SQL> ALTER CLUSTER RESET ALERTER;

경고 테스트 

다음 SQL 구문으로 테스트 경고를 발송할 수 있습니다.

SQL> select alert(<alert level>, '<alert text>');

경고 수준은 다음과 같습니다.

0 - CRITICAL
1 - ERROR
2 - WARNING
3 - INFO

경고 텍스트는 원하는 어떤 것이든 될 수도 있습니다.

예:

SQL> select alert(3,'I am a test alert');
+------------------------------+
| alert(3,'I am a test alert') |
+------------------------------+
|                            0 |
+------------------------------+
1 row in set (0.00 sec)

다음은 위의 테스트로 생성된 이메일입니다.

From: foo-cl20dafefv4af047 CLX Log Alert <noreply@clustrix.com>
Subject: foo-cl20dafefb4a7bf047 [INFO] User Invoked From SQL
Date: Mon, Apr 18, 2016 at 12:38PM
To: support.bot@clustrix.com

Severity: INFO
Date: 2016-04-18 07:08:13.084133 UTC
Host: foo
HWID: 00:30:48:be:63:88
Cluster: Clustrix_cluster
Version: 5.0.45-clustrix-7.0.1
Image Version: CentOS release 6.5 (Final)
Message: [SQL] I am a test alert

 

또 다른 질문이 있으십니까? 문의 등록

0 댓글

댓글을 남기려면 로그인하세요.
Zendesk 제공