1 parent
cfc74d9db6
commit
dacdf9c27d
76 files changed
+5209
-741
No files matched your search
@@ -7,6 +7,24 @@ use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::config::AppConfig;
|
||||
|
||||
#[derive(Debug, Clone, Serialize)]
|
||||
pub struct SessionPersistenceDiagnostics {
|
||||
pub backend: String,
|
||||
pub status: String,
|
||||
pub active_sessions: usize,
|
||||
pub unique_users: usize,
|
||||
pub unique_browsers: usize,
|
||||
pub latest_accessed_unix: Option<u64>,
|
||||
pub truncated: bool,
|
||||
pub engine_version: Option<String>,
|
||||
pub connected_clients: Option<u64>,
|
||||
pub blocked_clients: Option<u64>,
|
||||
pub used_memory_bytes: Option<u64>,
|
||||
pub server_uptime_secs: Option<u64>,
|
||||
pub role: Option<String>,
|
||||
pub master_link_status: Option<String>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone, Serialize, Deserialize)]
|
||||
pub struct PersistedSession {
|
||||
pub token: String,
|
||||
@@ -45,6 +63,7 @@ pub trait SessionPersistence: Send + Sync {
|
||||
async fn delete_account(&self, account_id: &str) -> Result<bool, String>;
|
||||
async fn delete_browser(&self, browser_id: &str) -> Result<(), String>;
|
||||
async fn purge_expired(&self, now_unix: u64) -> Result<u64, String>;
|
||||
async fn diagnostics(&self, now_unix: u64) -> Result<SessionPersistenceDiagnostics, String>;
|
||||
}
|
||||
|
||||
pub async fn from_config(
|
||||
|
||||
Reference in new issue
Block a user