UUID 참조용 콘텐츠 조각 업그레이드 upgrade-content-fragments-for-UUID-references
GraphQL 필터의 안정성을 최적화하기 위해 UUID(범용 고유 식별자)를 사용하도록 콘텐츠 조각에서 콘텐츠 및 조각 참조를 업그레이드할 수 있습니다.
원래 콘텐츠 조각 모델은 콘텐츠 참조 및 조각 참조 의 데이터 형식을 제공했습니다. 이러한 두 참조는 모두 참조된 리소스를 가리키는 경로를 사용하며 리소스를 이동할 경우 이 경로가 오래된 경로가 될 수 있습니다. 이러한 참조가 대부분의 시나리오에서 충분치 않지만 콘텐츠 조각 모델 은 UUID를 기반으로 참조를 제공하도록 확장되었습니다.
- 콘텐츠 참조(UUID)
- 조각 참조(UUID).
이러한 새 참조 유형은 새 콘텐츠 조각 모델 및 조각에서 모두 사용하고 기존 인스턴스를 확장하는 데 사용할 수 있습니다.
기존 콘텐츠 조각 및 모델을 업그레이드하려면 여기에 설명된 절차를 실행할 수 있습니다.
업그레이드된 항목 what-is-upgraded
다음과 같이 업데이트되었습니다.
-
데이터 유형 필드:
- 콘텐츠 참조 이(가) 콘텐츠 참조(UUID)(으)로 변환됨
- 조각 참조 이(가) 조각 참조(UUID)(으)로 변환됨
-
이러한 필드에 있는 경로 기반 참조의 값은 해당 UUID로 대체됩니다
업그레이드되지 않은 항목 what-is-not-upgraded
다음 참조는 업그레이드되지 않습니다.
-
페이지 참조 - UUID는 아직 지원되지 않습니다.
-
잘못된 참조(예: 콘텐츠 조각 경로의 대상 또는 에셋 경로가 존재하지 않는 경우)
-
콘텐츠 조각 경로 또는 에셋 경로가 잘못된 것처럼, 할당할 해당 UUID가 없는 잘못된 참조는 업그레이드되지 않습니다. 원본 참조는 그대로 유지됩니다.
-
시험 실행을 사용하여 잘못된 참조를 제거하십시오.
note note NOTE 유효하지 않으면 업그레이드와 관계없이 사용할 수 없습니다. -
업그레이드하지 말아야 할 경우 when-you-should-not-upgrade
업그레이드하지 마십시오.
- UUID는 아직 페이지 참조에 지원되지 않으므로 콘텐츠 조각 중 하나라도 페이지 참조를 사용하는 경우
UUID 참조의 제한 사항 limitations-of-uuid-references
현재 UUID를 기반으로 참조를 사용할 때는 다음 제한이 적용됩니다.
-
모델
- 컨텐츠 조각 UUID 또는 컨텐츠 참조 UUID 필드가 있는 새 컨텐츠 조각 모델을 OpenAPI를 통해 생성할 수 없습니다.
- 모델에 대한
id
필드가 UUID 기반으로 변경되지 않았습니다. 모델의 base64 디코딩 경로를 사용합니다. 모델을 이동할 수 없으므로 이 값은 여전히 안정적입니다.
-
자산
- OpenAPI를 통해 콘텐츠 조각을 만드는 경우 UUID 기반 참조 필드의 값을 설정하는 경우에도 조각 또는 에셋에 대한 참조를 지정하는 데 각각
fragment-reference
또는content-reference
필드 형식을 사용해야 합니다.
- OpenAPI를 통해 콘텐츠 조각을 만드는 경우 UUID 기반 참조 필드의 값을 설정하는 경우에도 조각 또는 에셋에 대한 참조를 지정하는 데 각각
계획 업그레이드 upgrade-planning
업그레이드를 실행하기 전에 몇 가지 준비 단계를 수행해야 합니다.
시험 실행 execute-a-dry-run
콘텐츠를 업그레이드할 때마다 매 마다 먼저 시험 실행을 수행하는 것이 좋습니다. 이렇게 하면 잠재적인 문제를 강조 표시하는 항목이 있는 로그 파일이 만들어집니다.
- 잘못된 참조
- 페이지 참조
dryRun
모드에서 콘텐츠 업그레이드를 실행하여 다음 작업을 수행합니다.
- 잘못된 참조를 식별하여 로그 파일에 나열합니다.
그런 다음 실제 콘텐츠 업그레이드를 실행하기 전에 이러한 참조를 수정할 수 있습니다. - 페이지 참조를 식별하여 로그 파일에 나열합니다.
페이지 참조가 검색되면 콘텐츠 업그레이드를 실행하지 말아야 합니다.
컨텐츠 고정 적용 enforce-a-content-freeze
콘텐츠 업그레이드 실행은 콘텐츠 동결 기간 동안 계획해야 합니다.
콘텐츠가 동결되는 기간은 업그레이드되는 콘텐츠 조각의 볼륨에 따라 다릅니다. 따라서 업그레이드의 범위는 몇 분에서 몇 시간 사이일 수 있으며 콘텐츠 업그레이드를 시작할 때 사용되는 매개 변수에 따라서도 달라집니다.
콘텐츠 업그레이드 실행 running-the-content-upgrade
끝점을 사용하여 콘텐츠 업그레이드를 관리할 수 있습니다. /libs/dam/cfm/maintenance.json
Administrator
역할이 필요합니다.콘텐츠 업그레이드 시작 start-a-content-upgrade
/libs/dam/cfm/maintenance.json
POST
start
uuidUpgradeService
1000
/conf
다음 중 하나를 지정합니다.
- 모든 AEM 구성을 업그레이드할 루트
/conf
- 선택한 AEM 구성 경로. 콘텐츠 업그레이드가 실행되는
예:/conf/wknd-shared
은(는) 단일 테넌트wknd-shared
만 업그레이드합니다.
10
replicate
, noReplicate
replicate
: 모든 AEM Publish 인스턴스에서 동일한 작업을 복제합니다noReplicate
: AEM 작성자 인스턴스에서만 작업을 실행합니다.
true
, false
false
: 콘텐츠 변경 내용을 저장하지 않고 콘텐츠 업그레이드를 시뮬레이션합니다.true
: 콘텐츠 업그레이드를 수행하고 콘텐츠 변경 내용을 저장합니다.
UUID
콘텐츠 업그레이드를 실행하는 작업의 ID입니다.
- 이 ID는 이 실행과 관련된 모든 후속 호출에 필요합니다.
mode
값이replicate
(으)로 설정된 경우 AEM Publish 인스턴스에서의 실행도 동일한jobId
아래에 있어야 합니다.
콘텐츠 업그레이드 요청 예 example-content-upgrade-request
code language-http |
---|
|
code language-http |
---|
|
콘텐츠 업그레이드 상태 가져오기 get-the-status-of-a-content-upgrade
/libs/dam/cfm/maintenance.json
GET
<UUID>
jobId
입니다.콘텐츠 업그레이드의 자세한 상태를 포함합니다.
-
간격(초)마다 업데이트됩니다.
-
uuidUpgradeService
실행에는 다음 두 단계가 있습니다.- 0단계에서 콘텐츠 조각 모델 업그레이드
- 콘텐츠 조각 업그레이드 1단계
-
각 단계에서 통계는 매 간격 후에 업데이트됩니다.
-
"jobStatus": "COMPLETED"는 업그레이드를 성공적으로 완료된 것으로 표시합니다.
-
다른 상태 값은 설명이 따로 필요하지 않습니다.
콘텐츠 업그레이드 상태 요청 예 example-content-upgrade-status-request
code language-http |
---|
|
code language-http |
---|
|
AEM 로그는 HTTP 끝점에서 가져온 실행 중인 콘텐츠 업그레이드의 상태 외에도 콘텐츠 수준의 진행 상황에 대한 자세한 정보를 제공합니다. 예:
code language-xml |
---|
|
또한 콘텐츠 조각 및 모델의 각 세그먼트(배치) 처리 후 누적 상태가 기록되어 지금까지의 진행 상황이 요약됩니다. 예:
code language-xml |
---|
|
콘텐츠 업그레이드 중단 abort-a-content-upgrade
- 이미 변경한 내용을 되돌리지 않습니다.
- 은(는) 콘텐츠를 혼합 상태로 둘 수 있습니다
/libs/dam/cfm/maintenance.json
POST
<UUID>
jobId
입니다.콘텐츠 업그레이드의 자세한 상태를 포함합니다.
- 참고할 상태는 "jobStatus": "ABORTED"입니다.
중단 작업 후에는 보류 중인 데이터 세그먼트가 처리되지 않습니다. - 중단 전에 jobStatus가 "COMPLETED"이면 호출이 영향을 주지 않습니다.
예 콘텐츠 업그레이드 요청 중단 example-abort-content-upgrade-request
code language-http |
---|
|
code language-http |
---|
|