mirror of
https://github.com/warp-tech/warpgate.git
synced 2025-10-02 19:35:54 +08:00
don't log session errors when recordings are disabled
This commit is contained in:
parent
9d314988c0
commit
46492a6593
3 changed files with 10 additions and 6 deletions
|
@ -25,6 +25,9 @@ pub enum Error {
|
||||||
#[error("Database")]
|
#[error("Database")]
|
||||||
Database(#[from] sea_orm::DbErr),
|
Database(#[from] sea_orm::DbErr),
|
||||||
|
|
||||||
|
#[error("Failed to serialize a recording item")]
|
||||||
|
Serialization(#[from] serde_json::Error),
|
||||||
|
|
||||||
#[error("Writer is closed")]
|
#[error("Writer is closed")]
|
||||||
Closed,
|
Closed,
|
||||||
|
|
||||||
|
|
|
@ -1,4 +1,3 @@
|
||||||
use anyhow::Result;
|
|
||||||
use bytes::{Bytes, BytesMut};
|
use bytes::{Bytes, BytesMut};
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use tokio::time::Instant;
|
use tokio::time::Instant;
|
||||||
|
@ -6,6 +5,7 @@ use warpgate_db_entities::Recording::RecordingKind;
|
||||||
|
|
||||||
use super::writer::RecordingWriter;
|
use super::writer::RecordingWriter;
|
||||||
use super::Recorder;
|
use super::Recorder;
|
||||||
|
use super::{Result, Error};
|
||||||
|
|
||||||
#[derive(Serialize)]
|
#[derive(Serialize)]
|
||||||
#[serde(untagged)]
|
#[serde(untagged)]
|
||||||
|
@ -84,7 +84,7 @@ impl TerminalRecorder {
|
||||||
}
|
}
|
||||||
|
|
||||||
async fn write_item(&mut self, item: &TerminalRecordingItem) -> Result<()> {
|
async fn write_item(&mut self, item: &TerminalRecordingItem) -> Result<()> {
|
||||||
let mut serialized_item = serde_json::to_vec(&item)?;
|
let mut serialized_item = serde_json::to_vec(&item).map_err(|e| Error::Serialization(e))?;
|
||||||
serialized_item.push(b'\n');
|
serialized_item.push(b'\n');
|
||||||
self.writer.write(&serialized_item).await?;
|
self.writer.write(&serialized_item).await?;
|
||||||
Ok(())
|
Ok(())
|
||||||
|
|
|
@ -21,7 +21,7 @@ use warpgate_common::auth::AuthSelector;
|
||||||
use warpgate_common::eventhub::{EventHub, EventSender};
|
use warpgate_common::eventhub::{EventHub, EventSender};
|
||||||
use warpgate_common::recordings::{
|
use warpgate_common::recordings::{
|
||||||
ConnectionRecorder, TerminalRecorder, TerminalRecordingStreamId, TrafficConnectionParams,
|
ConnectionRecorder, TerminalRecorder, TerminalRecordingStreamId, TrafficConnectionParams,
|
||||||
TrafficRecorder,
|
TrafficRecorder, self,
|
||||||
};
|
};
|
||||||
use warpgate_common::{
|
use warpgate_common::{
|
||||||
authorize_ticket, AuthCredential, AuthResult, Secret, Services, SessionId, Target,
|
authorize_ticket, AuthCredential, AuthResult, Secret, Services, SessionId, Target,
|
||||||
|
@ -705,15 +705,16 @@ impl ServerSession {
|
||||||
.write_pty_resize(request.col_width, request.row_height)
|
.write_pty_resize(request.col_width, request.row_height)
|
||||||
.await?;
|
.await?;
|
||||||
}
|
}
|
||||||
Ok::<_, anyhow::Error>(recorder)
|
Ok::<_, recordings::Error>(recorder)
|
||||||
}
|
}
|
||||||
.await
|
.await
|
||||||
{
|
{
|
||||||
Ok(recorder) => {
|
Ok(recorder) => {
|
||||||
self.channel_recorders.insert(channel_id, recorder);
|
self.channel_recorders.insert(channel_id, recorder);
|
||||||
}
|
}
|
||||||
Err(error) => {
|
Err(error) => match error {
|
||||||
error!(channel=%channel_id, ?error, "Failed to start recording");
|
recordings::Error::Disabled => (),
|
||||||
|
error => error!(channel=%channel_id, ?error, "Failed to start recording"),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue