package logs-syslog
Logs reporter to syslog (UDP/TCP/TLS)
Install
Dune Dependency
Authors
Maintainers
Sources
logs-syslog-v0.2.1.tbz
sha256=71caaf1cd86856ff231d346d821eb96b20d6890b63c34af6588d2b77778b2af3
md5=f2af7cf3de14e2a970faf2433375270e
doc/src/logs-syslog/logs_syslog.ml.html
Source file logs_syslog.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
let slevel = function | Logs.App -> Syslog_message.Informational | Logs.Error -> Syslog_message.Error | Logs.Warning -> Syslog_message.Warning | Logs.Info -> Syslog_message.Informational | Logs.Debug -> Syslog_message.Debug let ppf, flush = let b = Buffer.create 255 in let ppf = Format.formatter_of_buffer b in let flush () = Format.pp_print_flush ppf () ; let s = Buffer.contents b in Buffer.clear b ; s in ppf, flush let facility = let ppf ppf v = Format.pp_print_string ppf (Syslog_message.string_of_facility v) in Logs.Tag.def ~doc:"Syslog facility" "syslog-facility" ppf let message ?facility:(syslog_facility = Syslog_message.System_Daemons) ~host:hostname ~source ~ ?header level timestamp message = let = let = Logs.Tag.rem facility tags in if Logs.Tag.is_empty tags then "" else (Logs.Tag.pp_set ppf tags ; " " ^ flush ()) in let hdr = match header with None -> "" | Some x -> " " ^ x in let content = Printf.sprintf "%s%s %s" tags hdr message and severity = slevel level and tag = Astring.String.take ~max:32 source in { Syslog_message.facility = syslog_facility ; severity ; timestamp ; hostname ; tag ; content } type framing = [ | `LineFeed | `Null | `Custom of string | `Count ] let frame_message msg = function | `LineFeed -> msg ^ "\n" | `Null -> msg ^ "\000" | `Custom s -> msg ^ s | `Count -> Printf.sprintf "%d %s" (String.length msg) msg
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>