AEM 6의 작업 대시보드는 시스템 운영자가 AEM 시스템 상태를 한 눈에 모니터링할 수 있도록 도와줍니다. 또한 AEM의 관련 측면에 대해 자동 생성된 진단 정보를 제공하며 자체 포함된 유지 관리 자동화를 구성 및 실행하여 프로젝트 운영 및 지원 사례를 크게 줄일 수 있습니다. 작업 대시보드는 사용자 정의 상태 확인 및 유지 관리 작업으로 확장할 수 있습니다. 또한 Operations Dashboard 데이터는 JMX를 통해 외부 모니터링 도구에서 액세스할 수 있습니다.
작업 대시보드:
로 이동하여 액세스할 수 있습니다. 도구 - 작업 AEM 시작 화면에서 다음을 수행합니다.
Operations Dashboard에 액세스하려면 로그인한 사용자가 "운영자" 사용자 그룹의 일부여야 합니다. 자세한 내용은 다음 문서 를 참조하십시오. 사용자, 그룹 및 액세스 권한 관리.
상태 보고서 시스템은 Sling 상태 검사를 통해 AEM 인스턴스의 상태에 대한 정보를 제공합니다. OSGI, JMX, HTTP 요청(JSON 방식) 또는 Touch UI를 통해 이 작업을 수행합니다. 구성 가능한 특정 카운터의 측정 및 임계값을 제공하며 문제를 해결하는 방법에 대한 정보를 제공하는 경우도 있습니다.
아래에 설명된 몇 가지 기능이 있습니다.
다음 상태 보고서 는 특정 제품 영역에 대한 양호 또는 불량을 나타내는 카드 시스템입니다. 이 카드는 JMX 및 기타 소스의 데이터를 집계하고 처리된 정보를 MBean으로 다시 노출하는 Sling 상태 검사의 시각화입니다. 이러한 MBean은 JMX 웹 콘솔, org.apache.sling.healthcheck 도메인.
상태 보고서 인터페이스는 다음을 통해 액세스할 수 있습니다 도구 - 작업 - 상태 보고서 메뉴를 AEM 시작 화면에 표시하거나 다음 URL을 통해 직접 만듭니다.
https://<serveraddress>:port/libs/granite/operations/content/healthreports/healthreportlist.html
카드 시스템은 다음과 같은 세 가지 가능한 상태를 노출합니다. 확인, 경고 및 중요. 상태는 규칙 및 임계값의 결과이며, 카드 위로 마우스를 가져간 후 작업 표시줄에서 톱니바퀴 아이콘을 클릭하여 구성할 수 있습니다.
AEM 6에는 두 가지 유형의 상태 검사가 있습니다.
An 개인 상태 검사 상태 카드에 해당하는 단일 상태 확인입니다. 개별 상태 검사는 규칙 또는 임계값으로 구성할 수 있으며 식별된 상태 문제를 해결하기 위한 하나 이상의 힌트와 링크를 제공할 수 있습니다. 예를 들어 "로그 오류" 검사를 예로 들어 보겠습니다. 인스턴스 로그에 오류 항목이 있는 경우 상태 검사의 세부 정보 페이지에서 해당 항목을 찾습니다. 페이지 맨 위에는 진단 도구 섹션의 "로그 메시지" 분석기에 대한 링크가 표시됩니다. 이 링크를 사용하면 이러한 오류를 보다 자세히 분석하고 로거를 다시 구성할 수 있습니다.
A 복합 상태 검사 은 여러 개별 검사의 정보를 집계하는 검사입니다.
복합 상태 검사는 다음을 사용하여 구성됩니다. 태그 필터링. 본질적으로 필터 태그가 동일한 모든 단일 검사는 복합 상태 검사로 그룹화됩니다. 종합 상태 검사는 합계가 되는 모든 단일 검사가 OK 상태를 갖는 경우에만 OK 상태를 갖습니다.
작업 대시보드에서 개별 및 복합 상태 검사 결과를 시각화할 수 있습니다.
개별 상태 검사를 생성하려면 Sling 상태 검사를 구현하고 대시보드의 구성 노드에 상태 검사에 대한 항목을 추가하는 두 단계가 필요합니다.
Sling 상태 검사를 만들려면 Sling 상태 검사 인터페이스를 구현하는 OSGI 구성 요소를 만듭니다. 번들 내에 이 구성 요소를 추가합니다. 구성 요소의 속성은 상태 검사를 완전히 식별합니다. 구성 요소가 설치되면 상태 검사를 위해 JMX MBean이 자동으로 만들어집니다. 다음을 참조하십시오. Sling 상태 검사 설명서 추가 정보.
OSGI 서비스 구성 요소 주석으로 작성된 Sling 상태 확인 구성 요소의 예:
@Component(service = HealthCheck.class,
property = {
HealthCheck.NAME + "=Example Check",
HealthCheck.TAGS + "=example",
HealthCheck.TAGS + "=test",
HealthCheck.MBEAN_NAME + "=exampleHealthCheckMBean"
})
public class ExampleHealthCheck implements HealthCheck {
@Override
public Result execute() {
// health check code
}
}
다음 MBEAN_NAME
속성은 이 상태 검사를 위해 생성된 mbean의 이름을 정의합니다.
상태 검사를 생성한 후에는 작업 대시보드 인터페이스에서 액세스할 수 있도록 새 구성 노드를 만들어야 합니다. 이 단계를 수행하려면 상태 검사의 JMX Mbean 이름을 알고 있어야 합니다( MBEAN_NAME
속성)을 참조하십시오. 상태 검사에 대한 구성을 만들려면 CRXDE를 열고 노드(유형)를 추가합니다 nt:unstructured)를 클릭하여 제품에서 사용할 수 있습니다. /apps/settings/granite/operations/hc
새 노드에 설정해야 하는 속성은 다음과 같습니다.
이름: sling:resourceType
String
granite/operations/components/mbean
이름: resource
String
/system/sling/monitoring/mbeans/org/apache/sling/healthcheck/HealthCheck/exampleHealthCheck
위의 리소스 경로는 다음과 같이 만들어집니다. 상태 검사의 mbean 이름이 "test"인 경우 경로의 끝에 "test"를 추가합니다. /system/sling/monitoring/mbeans/org/apache/sling/healthcheck/HealthCheck
최종 경로는 다음과 같습니다.
/system/sling/monitoring/mbeans/org/apache/sling/healthcheck/HealthCheck/test
다음을 확인하십시오. /apps/settings/granite/operations/hc
path에는 다음 속성이 true로 설정되어 있습니다.
sling:configCollectionInherit
sling:configPropertyInherit
이 프로세스는 구성 관리자에게 새 구성을 의 기존 구성과 병합하도록 지시합니다 /libs
.
복합 상태 검사의 역할은 공통 기능 집합을 공유하는 여러 개별 상태 검사를 집계하는 것입니다. 예를 들어, 보안 복합 상태 검사는 보안 관련 확인을 수행하는 모든 개별 상태 검사를 그룹화합니다. 복합 검사를 만드는 첫 번째 단계는 OSGI 구성을 추가하는 것입니다. 작업 대시보드에 표시하려면 간단한 검사와 동일한 방식으로 새 구성 노드를 추가해야 합니다.
OSGI 콘솔에서 웹 구성 관리자로 이동합니다. 액세스 https://serveraddress:port/system/console/configMgr
(이)라는 항목 검색 Apache Sling Composite 상태 검사. 이 구성을 찾으면 두 가지 구성을 사용할 수 있습니다. 하나는 시스템 검사용이고 다른 하나는 보안 검사용입니다.
구성 오른쪽의 "+" 단추를 눌러 구성을 만듭니다. 아래와 같이 새 창이 나타납니다.
구성을 만들고 저장합니다. 새 구성으로 Mbean이 만들어집니다.
각 구성 속성의 목적은 다음과 같습니다.
hc.tags
).Apache Sling 컴포지트 상태 검사의 각 새 구성에 대해 새 JMX Mbean이 만들어집니다.**
마지막으로 생성된 복합 상태 검사 항목을 Operations Dashboard 구성 노드에 추가해야 합니다. 이 절차는 개별 상태 확인과 동일합니다(유형 노드) nt:unstructured 은(는) 아래에 생성되어야 합니다. /apps/settings/granite/operations/hc
. 노드의 리소스 속성은 다음 값으로 정의됩니다. hc.mean.name OSGI 구성
예를 들어 구성을 만들고 hc.mbean.name 값: 까지 디스크 사용량, 구성 노드는 다음과 같습니다.
이름: Composite Health Check
nt:unstructured
다음 속성을 사용합니다.
이름: sling:resourceType
String
granite/operations/components/mbean
이름: resource
String
/system/sling/monitoring/mbeans/org/apache/sling/healthcheck/HealthCheck/diskusage
기본적으로 대시보드에 이미 있는 합성 검사 아래에 논리적으로 속하는 개별 상태 검사를 만들면 해당 합성 검사 아래에 자동으로 캡처되고 그룹화됩니다. 따라서 이러한 검사를 위해 구성 노드를 만들 필요가 없습니다.
예를 들어 개별 보안 상태 검사를 만드는 경우 "에 할당합니다보안" 태그가 있으며 설치되어 있습니다. 작업 대시보드의 보안 검사 복합 검사(Security Checks composite check) 아래에 자동으로 나타납니다.
zHealthcheck 이름 | 설명 |
쿼리 성능 | 이 상태 검사는 단순화되었습니다. AEM 6.4에서, 그리고 이제 최근에 리팩터링한 이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=queriesStatus,type=HealthCheck. |
관찰 큐 길이 | 관찰 큐 길이는 모든 이벤트 리스너 및 백그라운드 관찰자를 반복합니다.
각 큐의 최대 길이는 별도의 구성(Oak 및 AEM)에서 가져오며, 이 상태 검사에서는 구성할 수 없습니다. 이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=ObservationQueueLengthHealthCheck,type=HealthCheck. |
쿼리 순회 제한 | 쿼리 순회 한도는 다음을 확인합니다.
이 상태 검사의 Mbean은 org.apache.sling.healthcheck:name=queryTraversalLimitsBundle,type=HealthCheck. |
동기화된 시계 | 이 검사는 에만 해당됩니다. 노드 저장소 클러스터 문서화. 이 메서드는 다음 상태를 반환합니다.
이 상태 검사의 Mbean은 org.apache.sling.healthcheck:name=slingDiscoveryOakSynchronizedCcks,type=HealthCheck. |
비동기 색인 | 비동기 인덱스 검사:
위기 및 경고 상태 임계값은 모두 구성할 수 있습니다. 이 상태 검사의 Mbean은 org.apache.sling.healthcheck:name=asyncIndexHealthCheck,type=HealthCheck. 참고: 이 상태 검사는 AEM 6.4에서 사용할 수 있으며 AEM 6.3.0.1로 백포팅되었습니다. |
큰 Lucene 색인 | 이 검사는 다음에 의해 노출된 데이터를 사용합니다.
임계값은 구성할 수 있으며 상태 검사에 대한 MBean은 org.apache.sling.healthcheck:name=largeIndexHealthCheck,type=HealthCheck. 참고: 이 검사는 AEM 6.4에서 사용할 수 있으며 AEM 6.3.2.0으로 백포팅되었습니다. |
시스템 유지 관리 | 시스템 유지 관리는 모든 유지 관리 작업이 구성된 대로 실행 중인 경우 확인을 반환하는 복합 검사입니다. 주의 사항:
이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=systemchecks,type=HealthCheck. |
복제 큐 | 이 검사는 복제 에이전트를 반복하고 해당 대기열을 확인합니다. 큐 맨 위에 있는 항목에 대해서는 에이전트가 복제를 다시 시도한 횟수를 확인합니다. 에이전트가 값 이상의 복제를 재시도한 경우 이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=replicationQueue,type=HealthCheck. |
Sling 작업 |
Sling 작업은 JobManager에서 대기 중인 작업 수를 확인하고 비교합니다.
maxNumQueueJobs 임계값 및:
대기열에 추가된 최대 작업 수 매개 변수만 구성할 수 있으며 기본값은 1000입니다. 이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=slingJobs,type=HealthCheck. |
요청 성능 | 이 검사는 다음을 확인합니다.
이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=requestsStatus,type=HealthCheck. |
오류 로그 | 이 검사는 로그에 오류가 있는 경우 경고 상태를 반환합니다. 이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=logErrorHealthCheck,type=HealthCheck. |
디스크 공간 | 디스크 공간 검사에서 다음을 확인합니다.
두 임계값 모두 구성할 수 있습니다. 이 검사는 세그먼트 스토어가 있는 인스턴스에서만 작동합니다. 이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=DiskSpaceHealthCheck,type=HealthCheck. |
스케줄러 상태 확인 | 이 검사는 인스턴스에 60초 이상 실행 중인 Quartz 작업이 있는 경우 경고를 반환합니다. 허용 가능한 기간 임계값은 구성할 수 있습니다. 이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=slingCommonsSchedulerHealthCheck,type=HealthCheck. |
보안 확인 | 보안 검사는 여러 보안 관련 검사 결과를 종합하는 합성 검사입니다. 이러한 개별 상태 검사는 다음에서 사용할 수 있는 보안 검사 목록과 다른 문제를 해결합니다. 보안 체크리스트 설명서 페이지. 이 검사는 인스턴스가 시작될 때 보안 연기 테스트로 유용합니다. 이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=securitychecks,type=HealthCheck |
활성 상태 번들 | 활성 번들은 모든 번들의 상태를 확인하고,
목록 무시 매개 변수는 구성할 수 있습니다. 이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=inactiveBundles,type=HealthCheck. |
코드 캐시 검사 | Java™ 7에 있는 CodeCache 버그를 트리거할 수 있는 여러 JVM 조건을 확인하는 상태 검사:
다음 이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=codeCacheHealthCheck,type=HealthCheck. |
리소스 검색 경로 오류 | 경로에 리소스가 있는지 확인합니다.
이 상태 검사의 MBean은 org.apache.sling.healthcheck:name=resourceSearchPathErrorHealthCheck,type=HealthCheck. |
기본적으로 기본 제공 AEM 인스턴스의 경우 상태 검사가 60초마다 실행됩니다.
다음을 구성할 수 있습니다. 기간 (으)로 OSGi 구성 쿼리 상태 검사 구성 (com.adobe.granite.queries.impl.hc.QueryHealthCheckMetrics).
상태 확인 대시보드는 Granite JMX Mbeans를 통해 Nagios와 통합할 수 있습니다. 아래 예제에서는 AEM을 실행하는 서버에서 사용된 메모리를 보여주는 검사를 추가하는 방법을 보여줍니다.
모니터링 서버에 Nagios를 설정하고 설치합니다.
그런 다음 Nagios 원격 플러그인 실행기(NRPE)를 설치합니다.
시스템에 Nagios 및 NRPE를 설치하는 방법에 대한 자세한 내용은 Nagios 설명서.
AEM 서버에 대한 호스트 정의를 추가합니다. Configuration Manager를 사용하여 Nagios XI 웹 인터페이스를 통해 다음 작업을 수행할 수 있습니다.
다음은 Nagios Core를 사용하는 경우 호스트 구성 파일의 예입니다.
define host {
address 192.168.0.5
max_check_attempts 3
check_period 24x7
check-command check-host-alive
contacts admin
notification_interval 60
notification_period 24x7
}
AEM 서버에 Nagios 및 NRPE를 설치합니다.
설치 check_http_json 두 서버에 플러그인이 있습니다.
두 서버에서 일반 JSON 검사 명령을 정의합니다.
define command{
command_name check_http_json-int
command_line /usr/lib/nagios/plugins/check_http_json --user "$ARG1$" --pass "$ARG2$" -u 'https://$HOSTNAME$:$ARG3$/$ARG4$' -e '$ARG5$' -w '$ARG6$' -c '$ARG7$'
}
AEM 서버에서 사용된 메모리에 대한 서비스를 추가합니다.
define service {
use generic-service
host_name my.remote.host
service_description AEM Author Used Memory
check_command check_http_json-int!<cq-user>!<cq-password>!<cq-port>!system/sling/monitoring/mbeans/java/lang/Memory.infinity.json!{noname}.mbean:attributes.HeapMemoryUsage.mbean:attributes.used.mbean:value!<warn-threshold-in-bytes>!<critical-threshold-in-bytes>
}
Nagios 대시보드에서 새로 만든 서비스를 확인하십시오.
또한 작업 대시보드는 상태 확인 대시보드에서 발생하는 경고의 근본 원인을 찾아 해결하고 시스템 운영자에게 중요한 디버그 정보를 제공하는 데 도움이 되는 진단 도구에 대한 액세스를 제공합니다.
이 솔루션의 가장 중요한 기능은 다음과 같습니다.
다음 위치로 이동하여 진단 도구 화면에 도달할 수 있습니다. 도구 - 작업 - 진단 AEM 시작 화면에서 다음을 수행합니다. 다음 URL에 직접 액세스하여 화면에 액세스할 수도 있습니다. https://serveraddress:port/libs/granite/operations/content/diagnosis.html
로그 메시지 사용자 인터페이스는 기본적으로 모든 오류 메시지를 표시합니다. 더 많은 로그 메시지를 표시하려면 적절한 로그 수준으로 로거를 구성하십시오.
로그 메시지는 메모리 내 로그 부속기를 사용하므로 로그 파일과 관련이 없습니다. 또 다른 결과는 이 UI의 로그 수준을 변경해도 기존 로그 파일에 기록되는 정보는 변경되지 않는다는 것입니다. 이 UI에서 로거를 추가 및 제거하는 것은 메모리 로거에만 영향을 줍니다. 또한 로거 구성 변경은 인메모리 로거의 미래에 반영됩니다. 이미 기록되어 있고 더 이상 관련이 없는 항목은 삭제되지 않지만 유사한 항목은 나중에 기록되지 않습니다.
UI의 왼쪽 상단 톱니바퀴 버튼에서 로거 구성을 제공하여 기록할 내용을 구성할 수 있습니다. 여기에서 로거 구성을 추가, 제거 또는 업데이트할 수 있습니다. 로거 구성은 로그 수준 (경고 / 정보 / 디버그) 및 필터 이름. 다음 필터 이름 는 기록되는 로그 메시지의 소스를 필터링하는 역할을 합니다. 또는 로거가 지정된 수준에 대한 모든 로그 메시지를 캡처해야 하는 경우 필터 이름은 "이어야 합니다.루트". 로거의 수준을 설정하면 지정된 수준보다 높거나 같은 수준의 모든 메시지가 캡처됩니다.
예:
다음을 모두 캡처할 계획이라면 오류 메시지 - 구성이 필요하지 않습니다. 모든 오류 메시지는 기본적으로 캡처됩니다.
다음을 모두 캡처할 계획이라면 오류, 경고 및 정보 메시지 - 로거 이름을 "(으)로 설정해야 합니다.루트및 로거 수준을 다음과 같이 설정합니다. 정보.
특정 패키지(예: com.adobe.granite)에서 오는 모든 메시지를 캡처할 계획이라면 - 로거 이름은 "com.adobe.granite"로 설정해야 합니다. 그리고 로거 수준을 다음으로 설정합니다. 디버그 (이렇게 하면 모든 항목이 캡처됩니다. 오류, 경고, 정보, 및 디버그 아래 이미지에 표시된 메시지)를 참조하십시오.
지정된 필터를 통해 오류 메시지만 캡처하도록 로거 이름을 설정할 수 없습니다. 기본적으로 모든 오류 메시지가 캡처됩니다.
로그 메시지 사용자 인터페이스가 실제 오류 로그를 반영하지 않습니다. UI에서 다른 유형의 로그 메시지를 구성하지 않는 한 오류 메시지만 표시됩니다. 특정 로그 메시지를 표시하는 방법은 위의 지침을 참조하십시오.
진단 페이지의 설정은 로그 파일에 기록되는 내용에 영향을 주지 않으며, 반대로 영향을 주지 않습니다. 따라서 오류 로그에 INFO 메시지가 표시되지만 로그 메시지 UI에 표시되지 않을 수 있습니다. 또한 UI를 통해 오류 로그에 영향을 주지 않고 특정 패키지에서 디버그 메시지를 catch할 수 있습니다. 로그 파일을 구성하는 방법에 대한 자세한 내용은 로깅.
AEM 6.4 사용, 유지 관리 작업은 INFO 수준에서 더 많은 정보가 풍부한 형식으로 즉시 로그아웃됩니다. 이 워크플로우를 통해 유지 관리 작업의 상태를 보다 잘 파악할 수 있습니다.
유지 관리 작업 활동을 모니터링하고 이에 대응하기 위해 서드파티 도구(예: Splunk)를 사용하는 경우 다음 로그 구문을 사용할 수 있습니다.
Log level: INFO
DATE+TIME [MaintanceLogger] Name=<MT_NAME>, Status=<MT_STATUS>, Time=<MT_TIME>, Error=<MT_ERROR>, Details=<MT_DETAILS>
요청 성능 페이지를 사용하여 처리된 가장 느린 페이지 요청을 분석할 수 있습니다. 이 페이지에는 콘텐츠 요청만 등록됩니다. 특히 다음 요청이 캡처됩니다.
/content
/etc/design
".html"
확장페이지가 표시됩니다.
기본적으로 가장 느린 20개의 페이지 요청이 캡처되지만 구성 관리자에서 제한을 수정할 수 있습니다.
[질의 성능] 페이지에서는 시스템에서 수행한 가장 느린 질의를 분석할 수 있습니다. 이 정보는 JMX Mbean의 저장소에서 제공합니다. 잭래빗에서 com.adobe.granite.QueryStat
JMX Mbean은 이 정보를 제공하며 Oak 저장소에서는 org.apache.jackrabbit.oak.QueryStats.
페이지가 표시됩니다.
주어진 쿼리의 경우 Oak는 아래의 저장소에 정의된 Oak 인덱스를 기반으로 가장 적합한 실행 방법을 찾으려고 합니다. oak:index 노드. 쿼리에 따라 Oak에서 서로 다른 색인을 선택할 수 있습니다. Oak가 쿼리를 실행하는 방법을 이해하는 것은 쿼리를 최적화하는 첫 번째 단계입니다.
쿼리 설명 은 Oak가 쿼리를 실행하는 방법을 설명하는 도구입니다. 로 이동하여 액세스할 수 있습니다. 도구 - 작업 - 진단 AEM 시작 화면에서 다음을 수행합니다. 그런 다음 을 클릭합니다. 쿼리 성능 로 전환합니다. 쿼리 설명 탭.
기능
Explain Query UI에서 쿼리를 입력한 다음 설명 단추:
쿼리 설명 섹션의 첫 번째 항목은 실제 설명입니다. 쿼리를 실행하는 데 사용된 인덱스 유형을 보여 주는 설명입니다.
두 번째 항목은 실행 계획입니다.
다음 항목에 체크 표시 실행 시간 포함 쿼리를 실행하기 전의 상자에는 쿼리가 실행된 시간도 표시됩니다. 다음 노드 카운트 포함 옵션은 노드 수를 보고합니다. 이 보고서를 통해 애플리케이션 또는 배포의 색인을 최적화하는 데 사용할 수 있는 자세한 정보를 얻을 수 있습니다.
색인 관리자의 목적은 색인을 유지하거나 색인 상태를 보는 것과 같은 색인 관리를 용이하게 하는 것입니다.
시작 화면에서 도구 - 작업 - 진단으로 이동한 다음 색인 관리자 단추를 클릭합니다.
또한 다음 URL에서 직접 액세스할 수도 있습니다. https://serveraddress:port/libs/granite/operations/content/diagnosistools/indexManager.html
UI는 화면 왼쪽 위의 검색 상자에 필터 기준을 입력하여 테이블의 인덱스를 필터링하는 데 사용할 수 있습니다.
이 작업은 시스템 상태 및 구성에 대한 유용한 정보가 포함된 zip 다운로드를 트리거합니다. 아카이브에는 인스턴스 구성, 번들 목록, OSGI, Sling 지표 및 통계가 포함되어 있어 파일이 커질 수 있습니다. 다음을 사용하여 큰 상태 파일의 영향을 줄일 수 있습니다. 상태 ZIP 다운로드창. 다음 위치에서 창에 액세스할 수 있습니다.AEM > 도구 > 작업 > 진단 > 다운로드 상태 ZIP.
이 창에서 내보낼 항목(로그 파일 및/또는 스레드 덤프)과 현재 날짜와 관련하여 다운로드에 포함된 로그 일수를 선택할 수 있습니다.
이 작업은 시스템에 있는 스레드에 대한 정보가 포함된 zip 다운로드를 트리거합니다. 상태, 클래스 로더 및 스택 추적 등 각 스레드에 대한 정보가 제공됩니다.
힙의 스냅샷을 다운로드하여 나중에 분석할 수 있습니다. 이 작업은 대형(수백 메가바이트) 파일의 다운로드를 트리거합니다.
자동 유지 관리 작업 페이지는 주기적 실행이 예약된 권장 유지 관리 작업을 보고 추적할 수 있는 위치입니다. 작업은 상태 검사 시스템과 통합됩니다. 작업을 인터페이스에서 수동으로 실행할 수도 있습니다.
작업 대시보드의 유지 관리 페이지로 이동하려면 AEM 시작 화면에서 도구 - 작업 - 대시보드 - 유지 관리또는 다음 링크를 직접 따르십시오.
https://serveraddress:port/libs/granite/operations/content/maintenance.html
작업 대시보드에서 사용할 수 있는 작업은 다음과 같습니다.
일별 유지 관리 창의 기본 시간은 오전 2시에서 오전 5시입니다. 주별 유지 관리 창에서 실행되도록 구성된 작업은 토요일 오전 1시에서 2시 사이에 실행됩니다.
다음 두 유지 관리 카드에서 톱니바퀴 아이콘을 눌러 시간을 구성할 수도 있습니다.
AEM 6.1부터 기존 유지 관리 기간을 매월 실행되도록 구성할 수도 있습니다.
개정 정리를 수행하는 방법에 대한 자세한 내용은 이 전용 문서 보기.
Lucene 바이너리 정리 작업을 사용하면 Lucene 바이너리를 제거하고 실행 중인 데이터 저장소 크기 요구 사항을 줄일 수 있습니다. Lucene의 이진 이탈은 성공한 항목에 대한 이전 종속성 대신 매일 회수됩니다. 데이터 저장소 가비지 수집 도망쳐!
유지 관리 작업은 Lucene 관련 수정 쓰레기를 줄이기 위해 개발되었지만 작업을 실행할 때 일반적인 효율성 향상이 있습니다.
다음 위치에서 Lucene 바이너리 정리 작업에 액세스할 수 있습니다. AEM > 도구 > 작업 > 유지 관리 > 일별 유지 관리 창 > Lucene 바이너리 정리.
데이터 저장소 가비지 수집에 대한 자세한 내용은 전용 설명서 페이지.
유지 관리 대시보드에서 워크플로우를 제거할 수도 있습니다. 워크플로 제거 작업을 실행하려면 다음 작업을 수행하십시오.
워크플로우 유지 관리에 대한 자세한 내용은 이 페이지.
감사 로그 유지 관리에 대해서는 다음을 참조하십시오. 별도의 설명서 페이지.
버전 제거 유지 관리 작업을 예약하여 이전 버전을 자동으로 삭제할 수 있습니다. 이 작업은 를 수동으로 사용해야 하는 필요성을 최소화합니다. 버전 삭제 도구. 에 액세스하여 버전 제거 작업을 예약하고 구성할 수 있습니다 도구 > 작업 > 유지 관리 > 주간 유지 관리 창 및 다음 단계를 수행합니다.
클릭 추가.
선택 버전 삭제 드롭다운 메뉴에서 을(를) 선택합니다.
버전 제거 작업을 구성하려면 기어 아이콘 새로 생성된 버전 제거 유지 관리 카드의 아이콘
AEM 6.4 사용, 다음과 같이 버전 제거 유지 관리 작업을 중지할 수 있습니다.
유지 관리 작업을 중지하면 이미 진행 중인 작업 추적을 잃지 않고 실행을 일시 중단하게 됩니다.
저장소 크기를 최적화하려면 버전 제거 작업을 자주 실행해야 합니다. 제한된 트래픽 양이 있는 업무 시간 외에 작업을 예약해야 합니다.
사용자 지정 유지 관리 작업은 OSGi 서비스로 구현할 수 있습니다. 유지 관리 작업 인프라는 Apache Sling의 작업 처리를 기반으로 하므로 유지 관리 작업은 Java™ 인터페이스를 구현해야 합니다 [org.apache.sling.event.jobs.consumer.JobExecutor](https://sling.apache.org/apidocs/sling7/org/apache/sling/event/jobs/consumer/JobExecutor.html)
. 또한 아래와 같이 유지 관리 작업으로 검색될 여러 서비스 등록 속성을 선언해야 합니다.
서비스 속성 이름 |
설명 | 예 |
유형 |
granite.maintenance.isStoppable | 사용자가 작업을 중지할 수 있는지 여부를 정의하는 부울 속성. 작업이 중지 가능하다고 선언하면 실행 중에 중지 여부를 확인한 다음 그에 따라 작업을 수행해야 합니다. 기본값은 false입니다. | true | 선택 사항 |
granite.maintenance.mandatory | 작업이 필수이고 정기적으로 실행해야 하는지 여부를 정의하는 부울 속성. 작업이 필수이지만 현재 활성 스케줄 창에 없는 경우 상태 점검 이 오류를 보고합니다. 기본값은 false입니다. | true | 선택 사항 |
granite.maintenance.name | 작업의 고유한 이름 - 이름은 작업을 참조하는 데 사용되며 단순한 이름입니다. | 내 유지 관리 작업 | 필수 |
granite.maintenance.title | 이 작업에 대해 표시된 제목 | 내 특별 유지 관리 작업 | 필수 |
job.topics | 유지 관리 작업의 고유 주제입니다. Apache Sling 작업 처리는 유지 관리 작업을 실행하기 위해 이 주제와 정확히 일치하는 작업을 시작하고 이 주제에 대해 작업이 등록되면 실행됩니다. 항목은 다음으로 시작해야 합니다. com/adobe/granite/maintenance/job/ |
com/adobe/granite/maintenance/job/MyMaintenanceTask | 필수 |
위의 서비스 속성 외에도 process()
방법 JobConsumer
유지 관리 작업을 위해 실행해야 하는 코드를 추가하여 인터페이스를 구현해야 합니다. 제공된 JobExecutionContext
은 상태 정보를 출력하고, 사용자가 작업을 중지했는지 여부를 확인하고, 결과(성공 또는 실패)를 만드는 데 사용할 수 있습니다.
유지 관리 작업이 모든 설치에서 실행되어서는 안 되는 상황(예: 게시 인스턴스에서만 실행)의 경우 를 추가하여 서비스를 활성화해야 합니다 @Component(policy=ConfigurationPolicy.REQUIRE)
. 그런 다음 저장소에 종속된 실행 모드로 해당 구성을 표시할 수 있습니다. 자세한 내용은 OSGi 구성.
다음은 지난 24시간 동안 수정된 구성 가능한 임시 디렉터리에서 파일을 삭제하는 사용자 지정 유지 관리 작업의 예입니다.
src/main/java/com/adobe/granite/samples/maintenance/impl/DeleteTempFilesTask.java
|
experiencemanager-java-maintenancetask-sample- src/main/java/com/adobe/granite/samples/maintenance/impl/DeleteTempFilesTask.java
서비스가 배포되면 작업 대시보드 UI에 표시됩니다. 사용 가능한 유지 관리 일정 중 하나에 추가할 수 있습니다.
이 작업은 /apps/granite/operations/config/maintenance/에서 해당 리소스를 추가합니다.schedule
/taskname
. 작업이 실행 모드에 따라 달라지는 경우, granite.operations.conditions.runmode 속성은 이 유지 관리 작업에 대해 활성화되어야 하는 실행 모드 값과 함께 해당 노드에 설정되어야 합니다.
다음 시스템 개요 대시보드 AEM 인스턴스의 구성, 하드웨어 및 상태에 대한 높은 수준의 개요를 표시합니다. 시스템 상태는 투명하며 모든 정보는 단일 대시보드에 집계됩니다.
다음을 수행할 수도 있습니다. 이 비디오 보기 시스템 개요 대시보드를 소개합니다.
시스템 개요 대시보드에 액세스하려면 다음으로 이동합니다. 도구 > 작업 > 시스템 개요.
아래 표에서는 시스템 개요 대시보드에 표시되는 모든 정보를 설명합니다. 표시할 관련 정보가 없는 경우(예: 백업이 진행 중이 아닌 경우 중요한 상태 검사가 없는 경우) 각 섹션에 "항목 없음" 메시지가 표시됩니다.
다음을 다운로드할 수도 있습니다 JSON
다음을 클릭하여 대시보드 정보를 요약하는 파일 다운로드 대시보드의 오른쪽 상단에 있는 단추입니다. 다음 JSON
엔드포인트 /libs/granite/operations/content/systemoverview/export.json
및 다음에서 사용할 수 있습니다. curl
외부 모니터링용 스크립트.
섹션 | 표시되는 정보 | 언제 중요합니까 | 링크 대상 |
상태 검사 |
|
시각적으로 표시됨:
|
|
유지 관리 작업 |
|
시각적으로 표시됨:
|
|
시스템 |
|
N/A | N/A |
인스턴스 |
|
N/A | N/A |
저장소 |
|
N/A | N/A |
분산 에이전트 |
|
시각적으로 표시됨:
|
배포 페이지 |
복제 에이전트 |
|
시각적으로 표시됨:
|
복제 페이지 |
워크플로 |
위에 표시된 각 상태에 대해 400밀리초 제한으로 쿼리가 수행됩니다. 400밀리초에서 해당 지점까지 획득된 엔트리의 수가 디스플레이된다. |
해석되지 않음:
|
워크플로 실패 페이지 |
Sling 작업 | Sling 작업 수 - 지정된 상태의 작업 수(있는 경우):
|
해석되지 않음:
|
N/A |
예상 노드 수 | 예상 수:
총 노드 수는 nodeCounterMBean에서 가져오고 나머지 통계는 IndexInfoService에서 가져옵니다. |
N/A | N/A |
백업 | 온라인 백업 진행 중 을 표시합니다. | N/A | N/A |
색인 생성 | 디스플레이:
스레드 덤프에 인덱싱 또는 쿼리 스레드가 있는 경우. |
N/A | N/A |