> (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`.


writeText(four_letter_word_allow_list, buf);
    buf.write('\n');
    writeText("log_storage_path=", buf);
    writeText(log_storage_path, buf);
    buf.write('\n');
    writeText("snapshot_storage_path=", buf);
    writeText(snapshot_storage_path, buf);
    buf.write('\n');
    
    writeText("max_requests_batch_size=", buf);
    write_int(coordination_settings->max_requests_batch_size);
    writeText("min_session_timeout_ms=", buf);
    write_int(static_cast<uint64_t>(coordination_settings->min_session_timeout_ms));
    writeText("session_timeout_ms=", buf);
    write_int(static_cast<uint64_t>(coordination_settings->session_timeout_ms));
    writeText("operation_timeout_ms=", buf);
    write_int(static_cast<uint64_t>(coordination_settings->operation_timeout_ms));
    writeText("dead_session_check_period_ms=", buf);
    write_int(static_cast<uint64_t>(coordination_settings->dead_session_check_period_ms));
    writeText("heart_beat_interval_ms=", buf);
    write_int(static_cast<uint64_t>(coordination_settings->heart_beat_interval_ms));
    writeText("election_timeout_lower_bound_ms=", buf);
    write_int(static_cast<uint64_t>(coordination_settings->election_timeout_lower_bound_ms));
    writeText("election_timeout_upper_bound_ms=", buf);
    write_int(static_cast<uint64_t>(coordination_settings->election_timeout_upper_bound_ms));
    writeText("reserved_log_items=", buf);
    write_int(coordination_settings->reserved_log_items);
    writeText("snapshot_distance=", buf);
    write_int(coordination_settings->snapshot_distance);
    writeText("auto_forwarding=", buf);