module Journald::Native
Constants
- IS_DUMMY
- VERSION
Public Class Methods
dummy?()
click to toggle source
static VALUE jdl_native_is_dummy() { return JOURNALD_NATIVE_SD_JOURNAL_DUMMY ? Qtrue : Qfalse; }
sd_journal_perror(p1)
click to toggle source
static VALUE jdl_native_perror(VALUE v_self, VALUE v_message) { char* message = StringValueCStr(v_message); int result = sd_journal_perror(message); return INT2NUM(result); }
Also aliased as: perror
sd_journal_print(p1, p2)
click to toggle source
static VALUE jdl_native_print(VALUE v_self, VALUE v_priority, VALUE v_message) { int priority = NUM2INT(v_priority); char* message = StringValueCStr(v_message); int result = sd_journal_print(priority, "%s", message); return INT2NUM(result); }
Also aliased as: print
sd_journal_send(*args)
click to toggle source
static VALUE jdl_native_send(int argc, VALUE* argv, VALUE self) { /* first check everything is a string / convertable to string */ for (int i = 0; i < argc; i++) { StringValue(argv[i]); /* you may get a ruby exception here */ } /* allocate memory after all checks to avoid possible memory leak */ iovec_t* msgs = xcalloc(argc, sizeof(iovec_t)); for (int i = 0; i < argc; i++) { VALUE v = argv[i]; msgs[i].iov_base = RSTRING_PTR(v); msgs[i].iov_len = RSTRING_LEN(v); } int result = sd_journal_sendv(msgs, argc); xfree(msgs); return INT2NUM(result); }
Also aliased as: send