Table of Contents |
---|
개요
AQL 은 Assets 을 조회하기 위한 전용 언어로 기존에는 IQL(Insight Query Language) 였지만 제품 이름이 변경되면서 AQL 로 개정되었습니다.
JQL 과 유사한 문법과 구조를 갖고 있으므로 쉽게 배우고 사용할 수 있습니다.
예제
...
검색 필터
Filter Search 를 눌러서 GUI 에서 검색할 필터를 설정할 수 있습니다. 만약 AQL 에 익숙하다면 Advanced 버튼을 클릭해서 직접 AQL 을 입력해서 검색할 .
...
AQL 사용
더 복잡한 질의를 하거나 관리하는 자산이 많아지면 AQL 을 사용하여 검색하는 것이 더 효과적입니다. AQL은 검색 메뉴에서 Advanced 버튼을 클릭하면 AQL 을 입력창으로 전환됩니다.
기본 검색
AQL 의 기본 검색 문법은 <attribute> <operator> <value/function> 입니다. 예로 다음 AQL 은 Owner 가 “Mitch Davis” 이고 비용이 1,000 이상인 자산을 리턴하는 AQL 로 위 예제와 동일한 결과를 가져옵니다.
Code Block | ||
---|---|---|
| ||
"Owner" = "Mitch Davis" AND "Cost" > 1000 |
...
특수 문자 구문
AQL에는 정의된 구문이 있으며 정확하게 입력해야 하며 다음과 같은 특징이 있습니다.
AQL은 대소문자를 구분합니다(속성 이름 제외, 즉 “Owner” = “Mitch” 와 “owner” = “Mitch” 는 동일한 질의입니다.)
값 또는 속성에 공백이 포함된 표현식을 사용하는 경우 위의 "Mitch Davis" 예제에서와 같이 값을 둘러싸는 따옴표를 포함해야 합니다.
값 또는 속성에 따옴표가 포함된 표현식을 사용하는 경우 따옴표를 백슬래시로 둘러싸서 따옴표를 이스케이프 처리해야 합니다. 예를 들어 15" Screen과 같은 개체 이름이 있는 경우 이를 검색하려면 다음과 같이 입력합니다: 15\"\ Screen
AQL에 지정한 속성 이름은 자산 스키마에 존재해야 합니다. 그렇지 않은 경우 AQL은 유효하지 않은 것으로 간주됩니다. 속성 이름을 입력할 때 대문자 또는 소문자를 모두 사용할 수 있습니다.
...
AQL 화면에서 “Filter search” 로 전환하려면 Basic(1) 을 클릭하면 되며 2번 텍스트 필드에 AQL 을 입력하면 됩니다.
...
Code Block | ||
---|---|---|
| ||
"Status" IN ("Active") AND "Renewal Date" < now(60d) AND "Renewal Date" >= now(-1d) |
automation 으로 만료된 Asset 목록 메일 전송하기
...
global → automation
...
Create rule 선택
...
“New trigger”에서 Scheduled trigger 를 생성
...
실행할 일정과 주기 선택
...
Add component 에서 “New action” 선택
...
component 에서 “lookup objects” 선택
...
Schema(1) 를 “IT employee Assets” 로 설정하고 Query(2) 에 다음 항목 입력하고 “publish rule”(3) 클릭
...
Code Block | ||
---|---|---|
| ||
objecttype = "Cloud Subscriptions" AND "Renewal date" < now() AND "Status" != Retired |
...
대상 assets 이 없을 경우 action 을 실행할 필요가 없으므로 조건식을 하나 추가합니다. 좌측에서 “New component” 를 클릭하고 “NEw condition”을 선택합니다.
...
“Advanced compare condition” 을 클릭합니다.
...
첫번째 값에 {{lookupObjects.size}} 를 입력하고 조건을 0 보다 클때도 설정하고 저장을 누릅니다.
...
사이즈가 0 보다 클 때, 즉 만료 예정 asset 이 있을 때 분기하도록 “New branch” 를 추가합니다.
...
Branch 목록에서 “Advanced branching” 을 선택합니다.
...
Asset 관련한 Smart value 중 조건에 해당하는 asset 목록을 의미하는 {{lookupObjects}}
를 설정(1)하고 Variable 에는 objectList 를 설정(2)하고 Save 를 클릭합니다.
...
대상 Assets 에 대한 안내 메일을 보내기 위해 “New action” 을 선택합니다.
...
action 목록에서 “Send email” 을 선택합니다.
...
메일을 수신할 주소나 그룹을 선택(1) 하고 메일 제목을 입력(2)합니다. 그리고 본문을 입력(3)하는데 본문에는 Object 값들을 {{ Object }} 형식으로 사용할 수 있습니다. 입력이 끝났으면 Save 를 눌러서 저장합니다.
...
Automation 생성이 끝났으므로 이름을 입력(1) 하고 “Turn it on” 을 클릭해서 활성화합니다.
...
상단의 “Run rule” 을 눌러서 직접 실행해 보고 만료 예정 자산에 대한 이메일이 왔는지 확인해 봅니다.
...
다음과 같은 Email 이 왔으면 정상 설정된 것입니다. 이제 설정한 주기마다 만료 예정 구독에 대한 알림이 전송됩니다.
...
AQL은 다음 장에서 논의할 자동화(Automation) 작업을 수행하는 데 유용합니다. JSM 의 자동화를 사용하면 쉽게 업무를 자동화할 수 있지만 자동화할 자산을 검색할 때 UI 를 사용할 수 없으므로 AQL 로 대상 자산을 질의해야 합니다.
실습
데모 사이트에 등록한 자산 목록에서 검색 필터를 이용해서 검색해 봅니다.
Advanced 를 클릭해서 등록한 자산에 Automation 을 설정해서 이메일 전송 여부를 확인합니다.