Today we log a "deleting snapshots [...] from repository [...]" message at INFO level [almost the first thing](https://github.com/elastic/elasticsearch/blob/dfaec0dbf0c8a0ba2912381334019725848f1f5a/server/src/main/java/org/elasticsearch/snapshots/SnapshotsService.java#L1886-L1888) when we start the deletion. However, the requested snapshots may not exist or they may be wildcards to be matched against actual snapshots. In these cases, the log message is either misleading or insuffiicent. Instead we should log the message after we have successfully added the delete to the cluster state similar to how the [logging works for snapshot creation](https://github.com/elastic/elasticsearch/blob/f77c16b78bab5e9f3ee24974aeba408e254e8c94/server/src/main/java/org/elasticsearch/snapshots/SnapshotsService.java#L3804).
server/src/main/java/org/elasticsearch/snapshots/SnapshotsService.java
}
        }
        return builder.build();
    }
    /**
     * Compute the snapshot status for a given shard based on the current primary routing entry for the shard.
     *
     * @param shardRepoGeneration repository generation of the shard in the repository
     * @param primary             primary routing entry for the shard
     * @return                    shard snapshot status
     */
    private static ShardSnapshotStatus initShardSnapshotStatus(ShardGeneration shardRepoGeneration, ShardRouting primary) {
        ShardSnapshotStatus shardSnapshotStatus;
        if (primary == null || primary.assignedToNode() == false) {
            shardSnapshotStatus = new ShardSnapshotStatus(null, ShardState.MISSING, "primary shard is not allocated", shardRepoGeneration);
        } else if (primary.relocating() || primary.initializing()) {
            shardSnapshotStatus = new ShardSnapshotStatus(primary.currentNodeId(), ShardState.WAITING, shardRepoGeneration);
        } else if (primary.started() == false) {
            shardSnapshotStatus = new ShardSnapshotStatus(
                primary.currentNodeId(),
                ShardState.MISSING,
                "primary shard hasn't been started yet",
                shardRepoGeneration
            );
        } else {
            shardSnapshotStatus = new ShardSnapshotStatus(primary.currentNodeId(), shardRepoGeneration);
        }
        return shardSnapshotStatus;
    }
    /**