Project Description
PB-LOG is a quick and easy XML logger for all kink of .NET application. You can insert log associated to a user. There're 4 kind of log: Error, Info, Warning, Event. It's developed in C# 4. There's also
PB-LOG for WP7.
1) Add library to the project references
2) Initialize
Logger logger = new Logger(); // basic - default name of xml file
Logger logger = new Logger(@"C:\logger.xml"); // you can decide name of xml file
Logger logger = new Logger(true) // you can decide if users will be owners of logs. in this way, when will be deleted a user, will be deleted also their logs
Logger logger = new Logger(@"C:\logger.xml", true) // you can decide name of xml file and if users will be owners of logs
3) Add user
User user = new User()
{
Username = "helloworld",
Rule = "Administrator"
};
logger.Users.Add(user);
// another way
logger.Users.Add("pisolobill");
4) Add log
Log logUser = new Log() // log with a user
{
LogType = LogType.Info,
Message = "msuyu",
User = user
};
Log logNoUser = new Log() // log without a user
{
LogType = LogType.Info,
Message = "msuyu"
};
logger.Logs.Add(logUser);
logger.Logs.Add(logNoUser);
// another way
logger.Logs.Add("message", "username", LogType.Info); // with user
logger.Logs.Add("message", LogType.Info) // without user
5) Users and Logs are Collection, so supports queries LINQ and other methods
if(logger.Users.Exists(u => u.Username == "username" && u.Rule == "rule"))
{
logger.Users.Remove("username")
}
Log log = logger.Logs[2];
IEnumerable<Log> getWarnings = logger.Logs.Warnings;
IEnumerable<Log> linq = logger.Logs.Errors.Where(u => u.Rule == "Administrator");
XML RESULT
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Logs>
<Errors />
<Warnings />
<Informations>
<Info Message="msuyu" Created="08/04/2012 01:58:37" User="pisolobill" />
</Informations>
<Events />
<Users>
<User Username="helloworld" Rule="Administrator" Created="08/04/2012 01:58:07" />
</Users>
</Logs>