Skip to content

Commit 9d2b999

Browse files
valaraucadpc
authored andcommitted
review
1 parent 0b1aa8c commit 9d2b999

File tree

2 files changed

+54
-39
lines changed

2 files changed

+54
-39
lines changed

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "slog-syslog"
3-
version = "2.2.0"
3+
version = "0.0.12"
44
authors = ["Dawid Ciężarkiewicz <[email protected]>", "William Laeder <[email protected]" ]
55
description = "Syslog drain for slog-rs"
66
keywords = ["slog", "logging", "json", "log", "syslog"]

lib.rs

Lines changed: 53 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,17 @@
2525
//! ```
2626
#![warn(missing_docs)]
2727

28+
extern crate nix;
2829
extern crate slog;
2930
extern crate syslog;
30-
extern crate nix;
3131

32-
use slog::{Drain, Level, Record, OwnedKVList};
33-
use std::{io, fmt};
32+
use slog::{Drain, Level, OwnedKVList, Record};
33+
use std::{fmt, io};
3434
use std::sync::Mutex;
3535
use std::cell::RefCell;
36-
use std::path::{PathBuf,Path};
36+
use std::path::{Path, PathBuf};
3737
use std::net::SocketAddr;
38-
use std::io::{Error,ErrorKind};
38+
use std::io::{Error, ErrorKind};
3939

4040
use slog::KV;
4141

@@ -54,7 +54,6 @@ fn level_to_severity(level: slog::Level) -> syslog::Severity {
5454
Level::Debug => syslog::Severity::LOG_INFO,
5555
Level::Trace => syslog::Severity::LOG_DEBUG,
5656
}
57-
5857
}
5958

6059
/// Drain formatting records and writing them to a syslog ``Logger`
@@ -81,17 +80,18 @@ impl Drain for Streamer3164 {
8180
type Ok = ();
8281

8382
fn log(&self, info: &Record, logger_values: &OwnedKVList) -> io::Result<()> {
84-
8583
TL_BUF.with(|buf| {
8684
let mut buf = buf.borrow_mut();
8785
let res = {
8886
|| {
8987
try!(self.format.format(&mut *buf, info, logger_values));
9088
let sever = level_to_severity(info.level());
9189
{
92-
let io = try!(self.io
93-
.lock()
94-
.map_err(|_| Error::new(ErrorKind::Other, "locking error")));
90+
let io = try!(
91+
self.io
92+
.lock()
93+
.map_err(|_| Error::new(ErrorKind::Other, "locking error"))
94+
);
9595

9696
let buf = String::from_utf8_lossy(&buf);
9797
let buf = io.format_3164(sever, &buf).into_bytes();
@@ -100,7 +100,7 @@ impl Drain for Streamer3164 {
100100
while pos < buf.len() {
101101
let n = try!(io.send_raw(&buf[pos..]));
102102
if n == 0 {
103-
break
103+
break;
104104
}
105105

106106
pos += n;
@@ -125,11 +125,12 @@ impl Format3164 {
125125
Format3164
126126
}
127127

128-
fn format(&self,
129-
io: &mut io::Write,
130-
record: &Record,
131-
logger_kv: &OwnedKVList)
132-
-> io::Result<()> {
128+
fn format(
129+
&self,
130+
io: &mut io::Write,
131+
record: &Record,
132+
logger_kv: &OwnedKVList,
133+
) -> io::Result<()> {
133134
try!(write!(io, "{}", record.msg()));
134135

135136
let mut ser = KSV::new(io);
@@ -148,9 +149,7 @@ struct KSV<W: io::Write> {
148149

149150
impl<W: io::Write> KSV<W> {
150151
fn new(io: W) -> Self {
151-
KSV {
152-
io: io,
153-
}
152+
KSV { io: io }
154153
}
155154
}
156155

@@ -162,9 +161,18 @@ impl<W: io::Write> slog::Serializer for KSV<W> {
162161
}
163162

164163
enum SyslogKind {
165-
Unix{ path: PathBuf },
166-
Tcp{server: SocketAddr, hostname: String},
167-
Udp{local: SocketAddr, host: SocketAddr, hostname: String},
164+
Unix {
165+
path: PathBuf,
166+
},
167+
Tcp {
168+
server: SocketAddr,
169+
hostname: String,
170+
},
171+
Udp {
172+
local: SocketAddr,
173+
host: SocketAddr,
174+
hostname: String,
175+
},
168176
}
169177

170178
/// Builder pattern for constructing a syslog
@@ -183,7 +191,6 @@ impl Default for SyslogBuilder {
183191
}
184192
}
185193
impl SyslogBuilder {
186-
187194
/// Build a default logger
188195
///
189196
/// By default this will attempt to connect to (in order)
@@ -209,23 +216,27 @@ impl SyslogBuilder {
209216
pub fn udp<S: AsRef<str>>(self, local: SocketAddr, host: SocketAddr, hostname: S) -> Self {
210217
let mut s = self;
211218
let hostname = hostname.as_ref().to_string();
212-
s.logkind = Some(SyslogKind::Udp{ local, host, hostname });
219+
s.logkind = Some(SyslogKind::Udp {
220+
local,
221+
host,
222+
hostname,
223+
});
213224
s
214225
}
215226

216227
/// Remote TCP syslogging
217228
pub fn tcp<S: AsRef<str>>(self, server: SocketAddr, hostname: S) -> Self {
218229
let mut s = self;
219230
let hostname = hostname.as_ref().to_string();
220-
s.logkind = Some(SyslogKind::Tcp{ server, hostname });
231+
s.logkind = Some(SyslogKind::Tcp { server, hostname });
221232
s
222233
}
223234

224-
/// Local syslogging over a unix socket
235+
/// Local syslogging over a unix socket
225236
pub fn unix<P: AsRef<Path>>(self, path: P) -> Self {
226237
let mut s = self;
227238
let path = path.as_ref().to_path_buf();
228-
s.logkind = Some(SyslogKind::Unix{ path });
239+
s.logkind = Some(SyslogKind::Unix { path });
229240
s
230241
}
231242

@@ -234,25 +245,29 @@ impl SyslogBuilder {
234245
let facility = match self.facility {
235246
Option::Some(x) => x,
236247
Option::None => {
237-
return Err(Error::new(ErrorKind::Other, "facility must be provided to the builder"));
248+
return Err(Error::new(
249+
ErrorKind::Other,
250+
"facility must be provided to the builder",
251+
));
238252
}
239253
};
240254
let logkind = match self.logkind {
241255
Option::Some(l) => l,
242256
Option::None => {
243-
return Err(Error::new(ErrorKind::Other, "no logger kind provided, library does not know what do initialize"));
257+
return Err(Error::new(
258+
ErrorKind::Other,
259+
"no logger kind provided, library does not know what do initialize",
260+
));
244261
}
245262
};
246263
let log = match logkind {
247-
SyslogKind::Unix{ path } => {
248-
syslog::unix_custom(facility,path)?
249-
},
250-
SyslogKind::Udp{ local, host, hostname } => {
251-
syslog::udp(local, host, hostname, facility)?
252-
},
253-
SyslogKind::Tcp{server, hostname} => {
254-
syslog::tcp(server, hostname, facility)?
255-
},
264+
SyslogKind::Unix { path } => syslog::unix_custom(facility, path)?,
265+
SyslogKind::Udp {
266+
local,
267+
host,
268+
hostname,
269+
} => syslog::udp(local, host, hostname, facility)?,
270+
SyslogKind::Tcp { server, hostname } => syslog::tcp(server, hostname, facility)?,
256271
};
257272
Ok(Streamer3164::new(log))
258273
}

0 commit comments

Comments
 (0)