All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.elasticsearch.xpack.core.slm.package-info Maven / Gradle / Ivy

/*
 * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one
 * or more contributor license agreements. Licensed under the Elastic License
 * 2.0; you may not use this file except in compliance with the Elastic License
 * 2.0.
 */

/**
 * This is the Snapshot Lifecycle Management (SLM) core package. This package contains the core classes for SLM, including all of the
 * custom cluster state metadata objects, execution history storage facilities, and the action definitions. For the main SLM service
 * implementation classes, please see the {@code ilm}ilm module's {@code org.elasticsearch.xpack.slm} package.
 *
 * 

Contained within this specific package are the custom metadata objects and models used through out the SLM service. The names can * be confusing, so it's important to know the differences between each metadata object. * *

The {@link org.elasticsearch.xpack.core.slm.SnapshotLifecyclePolicy} object is the user provided definition of the * SLM policy. This is what a user provides when creating a snapshot policy, and acts as the blueprint for the create snapshot request * that the service launches. It additionally surfaces the next point in time a policy should be executed. * *

Lateral to the policy, the {@link org.elasticsearch.xpack.core.slm.SnapshotInvocationRecord} represents an execution * of a policy. It includes within it the policy name and details about its execution, success or failure. * *

Next is the {@link org.elasticsearch.xpack.core.slm.SnapshotLifecyclePolicyMetadata} object, which not only contains * the {@link org.elasticsearch.xpack.core.slm.SnapshotLifecyclePolicy} blueprint, but also any contextual information about * that policy, like the user information of who created it so that it may be used during execution, as well as the version of the policy, * and both the last failed and successful runs as {@link org.elasticsearch.xpack.core.slm.SnapshotInvocationRecord}s. This * is the living representation of a policy within the cluster state. * *

When a "Get Policy" action is executed, the {@link org.elasticsearch.xpack.core.slm.SnapshotLifecyclePolicyItem} is * returned instead. This is a thin wrapper around the internal * {@link org.elasticsearch.xpack.core.slm.SnapshotLifecyclePolicyMetadata} object so that we do not expose any sensitive * internal headers or user information in the Get API. * *

Finally, the {@link org.elasticsearch.xpack.core.slm.SnapshotLifecycleMetadata} class contains all living SLM * policies and their metadata, acting as the SLM specific root object within the cluster state. */ package org.elasticsearch.xpack.core.slm;





© 2015 - 2024 Weber Informatics LLC | Privacy Policy