我只是熟悉日志记录模块,并对处理不同级别的正确方法感到困惑。这个flow chart表示没有任何低于设置级别的内容被传递给logger对象,那么为什么有人会记录低于设置级别的任何内容?我应该制作多个日志文件吗?例如,单个脚本中的logging.basicConfig(filename='general_log.log',level=logging.WARNING)
和logging.basicConfig(filename='detailed_log.log',level=logging.DEBUG)
?
答案 0 :(得分:0)
多个日志记录级别用于不同目的。
例如,当您开发一些新功能时作为开发人员,您可以将日志记录级别设置为DEBUG
,这可以帮助您调试代码,并且可以在运行程序时将日志记录级别设置为INFO
生产。所有调试级别的日志记录都将被静音。
您可以制作多个日志文件。例如,如果您想更轻松地跟踪ERROR
日志,可以将它们记录到单独的文件中,这样可以节省在常规日志文件中查找它们的时间。
答案 1 :(得分:0)
https://docs.python.org/2/library/logging.html#logging.basicConfig
<!DOCTYPE html>
<html>
<head>
<title>@ViewBag.Title - Moran</title>
<meta charset="utf-8" />
<link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.min.css" />
<link rel="stylesheet" href="~/lib/bootswatch/yeti/bootstrap.min.css" />
<link rel="stylesheet" href="~/lib/font-awesome/css/font-awesome.min.css" />
<link rel="stylesheet" href="~/css/site.css" />
</head>
<body>
<nav class="navbar navbar-default"></nav>
<div class="navbar navbar-inverse navbar-fixed-top">
<div class="container-fluid">
<div class="navbar-header ">
@if (User.Identity.IsAuthenticated)
{
<span id="username">@User.Identity.Name</span>
}
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
@Html.ActionLink("Moran", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })
</div>
<div class="navbar-collapse collapse">
<ul class="nav navbar-nav">
<li class="active"><a asp-controller="App" asp-action="Index">Home</a></li>
<li><a asp-controller="App" asp-action="ContactUs">Contact Us</a></li>
<li><a asp-controller="App" asp-action="About">About</a></li>
<li><a asp-controller="App" asp-action="Galery">Galery</a></li>
<li><a asp-controller="App" asp-action="Trips">Trips</a></li>
@if (User.Identity.IsAuthenticated)
{
<li><a asp-controller="Auth" asp-action="Logout">Logout</a></li>
}
</ul>
</div>
</div>
</div>
<div id="main" class="container-fluid">
<div>
@RenderBody()
</div>
</div>
<div id="footer" class="container-fluid">
<div class="navbar navbar-inverse navbar-fixed-bottom">
<p class="text-center text-danger">© @DateTime.Now.Year - Moran Ribadeo S.L.</p>
</div>
</div>
<script type="text/javascript" src="~/lib/jquery/dist/jquery.min.js"></script>
<script type="text/javascript" src="~/lib/bootstrap/dist/js/bootstrap.min.js"></script>
<environment names="Development">
<script type="text/javascript" src="~/jScript/site.js"></script>
</environment>
<environment names="Production,Staging">
<script type="text/javascript" src="~/lib/_app/site.js"></script>
</environment>
@RenderSection("Scripts", false)
</body>
</html>
第二次拨打This function does nothing if the root logger already has handlers configured for it.
可能不会做任何事情。
要记录多个文件,您需要配置多个处理程序:
logging.basicConfig