Skip to content

Commit

Permalink
instrument lua transform
Browse files Browse the repository at this point in the history
Signed-off-by: Luke Steensen <luke.steensen@gmail.com>
  • Loading branch information
lukesteensen committed Mar 13, 2020
1 parent 50c5423 commit 239c671
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions src/transforms/lua.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ use crate::{
event::{Event, Value},
topology::config::{DataType, TransformConfig, TransformContext, TransformDescription},
};
use metrics::{counter, gauge};
use serde::{Deserialize, Serialize};
use snafu::{ResultExt, Snafu};

Expand Down Expand Up @@ -101,21 +102,26 @@ impl Lua {
func.call(())?;
globals.get::<_, Option<Event>>("event")
});

self.invocations_after_gc += 1;
if self.invocations_after_gc % GC_INTERVAL == 0 {
gauge!("transforms.lua.used_memory", self.lua.used_memory() as i64);
self.lua.gc_collect()?;
self.invocations_after_gc = 0;
}

result
}
}

impl Transform for Lua {
fn transform(&mut self, event: Event) -> Option<Event> {
counter!("transforms.lua.events", 1);
match self.process(event) {
Ok(event) => event,
Err(err) => {
error!(message = "Error in lua script; discarding event.", error = %format_error(&err), rate_limit_secs = 30);
counter!("transforms.lua.script_error", 1);
None
}
}
Expand Down

0 comments on commit 239c671

Please sign in to comment.