> (you don't have to strictly follow this form)

**Use case**

Support manually snapshot for Keeper.

**Describe the solution you'd like**

Throught 4lw commands, such as `csnp`.


#pragma once
#include <string>
#include <base/types.h>
#include <Common/Exception.h>
namespace DB
{
namespace ErrorCodes
{
    extern const int LOGICAL_ERROR;
}
struct Keeper4LWInfo
{
    bool is_leader;
    bool is_observer;
    bool is_follower;
    bool is_standalone;
    bool has_leader;
    uint64_t alive_connections_count;
    uint64_t outstanding_requests_count;
    uint64_t follower_count;
    uint64_t synced_follower_count;
    uint64_t total_nodes_count;
    int64_t last_zxid;
    String getRole() const