想做一个简单的日志记录有哪些用户请求。
参考于:https://segmentfault.com/a/1190000014132337
代码如下:
public class Logger
{
private static readonly Logger Logg = new Logger();
private string _logNodePath;//日志文件放于根目录Logs文件夹下的哪个子文件夹中
private Logger()
{}
public static Logger GetLogger(string logNodePath)
{
Logg._logNodePath = logNodePath;
return Logg;
}public void WriteLogs(string dirName, string type, string content)
{
string path = AppDomain.CurrentDomain.BaseDirectory;
if (!string.IsNullOrEmpty(path))
{
path = AppDomain.CurrentDomain.BaseDirectory + dirName + "/" + Logg._logNodePath;
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
path = path + "\\" + DateTime.Now.ToString("yyyyMMdd") + ".log";
if (!File.Exists(path))
{
FileStream fs = File.Create(path);
fs.Close();
}
if (File.Exists(path))
{
StreamWriter sw = new StreamWriter(path, true, System.Text.Encoding.Default);
sw.WriteLineAsync(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss ") +"【"+ type + "】" + content);
sw.Close();
}
}
}private void Log(string type, string content)
{
WriteLogs("Logs", type, content);
}public void Debug(string content)
{
Log("Debug", content);
}public void Info(string content)
{
Log("Info", content);
}public void Warn(string content)
{
Log("Warn", content);
}public void Error(string content)
{
Log("Error", content);
}public void Fatal(string content)
{
Log("Fatal", content);
}
}
调用:
Logger log = Logger.GetLogger("Log_WebAPI");
log.Info("日志开始。IP:"+ GetURL.GetClientIP());