Radish alpha
r
Radicle CI broker
Radicle
Git (anonymous pull)
Log in to clone via SSH
feat: log stuff happaning in CiEventSource
Lars Wirzenius committed 1 year ago
commit 3a345c649263f7daec33bd09a9a21ac0638dbfb4
parent 593cedeaad9548a90cadb77ee5e772adea77ed68
2 files changed +39 -3
modified src/ci_event_source.rs
@@ -1,3 +1,5 @@
+
use std::fmt;
+

use radicle::Profile;

use crate::{
@@ -12,8 +14,11 @@ pub struct CiEventSource {

impl CiEventSource {
    pub fn new(profile: &Profile) -> Result<Self, CiEventSourceError> {
-
        let source = NodeEventSource::new(profile).map_err(CiEventSourceError::Subscribe)?;
-
        Ok(Self { source })
+
        let source = Self {
+
            source: NodeEventSource::new(profile).map_err(CiEventSourceError::Subscribe)?,
+
        };
+
        logger::ci_event_source_created(&source);
+
        Ok(source)
    }

    pub fn event(&mut self) -> Result<Vec<CiEvent>, CiEventSourceError> {
@@ -36,6 +41,12 @@ impl CiEventSource {
    }
}

+
impl fmt::Debug for CiEventSource {
+
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
+
        write!(f, "CiEventSource<path={:?}", self.source)
+
    }
+
}
+

#[derive(Debug, thiserror::Error)]
pub enum CiEventSourceError {
    #[error("failed to subscribe to node events")]
modified src/logger.rs
@@ -10,6 +10,7 @@ use slog_scope::GlobalLoggerGuard;

use crate::{
    ci_event::CiEvent,
+
    ci_event_source::CiEventSource,
    config::Config,
    db::{QueueId, QueuedCiEvent},
    msg::Request,
@@ -91,7 +92,31 @@ pub fn node_event_source_eof(source: &NodeEventSource) {
    info!(
        slog_scope::logger(),
        "node event source end of file on control socket";
-
        "node_event" => format!("{source:#?}")
+
        "node_event_source" => format!("{source:#?}")
+
    );
+
}
+

+
pub fn ci_event_source_created(source: &CiEventSource) {
+
    info!(
+
        slog_scope::logger(),
+
        "created CI event source";
+
        "source" => format!("{source:#?}")
+
    );
+
}
+

+
pub fn ci_event_source_got_event(event: &CiEvent) {
+
    info!(
+
        slog_scope::logger(),
+
        "CI event source received event";
+
        "ci_event" => format!("{event:#?}")
+
    );
+
}
+

+
pub fn ci_event_source_eof(source: &CiEventSource) {
+
    info!(
+
        slog_scope::logger(),
+
        "CI event source end of file";
+
        "ci_event_source" => format!("{source:#?}")
    );
}