我在用C#编写的Windows服务程序中使用log4net RollingFileAppender.日志目录中文件的数量和大小增长得太快,需要清理.配置如下:
<appender name="Rolling Log" type="log4net.Appender.RollingFileAppender">
<file value="..\logs\MyProgram.%cs{instanceName}.log" />
<appendToFile value="true" />
<rollingStyle value="Composite" />
<datePattern value=".yyyy-MM-dd.lo\g" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="150MB" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%-5level] %property{remoteUser} [%threadIdentity] %type{1}.%method - %message%newline%exception" />
</layout>
Run Code Online (Sandbox Code Playgroud)
我只想保留30天的日志.如何配置log4net自动删除日志?如果没有通过log4net可用,我会有什么解决方案?
先感谢您.
背景:
我从trunk创建了一个名为release-v1.0的分支.然后我继续在树干上工作.在我更新并在trunk中提交了一个文件之后,我使用Tortoise SVN从trunk到release-v1.0分支进行了更改.
我期待提交窗口只包含一个文件.但是有28个文件和文件夹被修改.28个中的27个是属性修改.1个28是我期望的文本修改文件.Property Modified的文件和文件夹似乎与我的文件没有任何关系.
为什么Tortoise SVN会触及那么多与我的文件无关的文件夹和文件?这真的很分散注意力.
我的同事告诉我他直接使用Beyond Compare,因为他无法理解Tortoise SVN.我不确定这是最好的方法.
编辑 问题: 有没有办法阻止Property Modified发生?
我在新项目中阅读了一些代码,发现前开发人员正在使用Serializable和DataContract.
[Serializable]
Run Code Online (Sandbox Code Playgroud)
和
[DataContract(Namespace="Some.Name.Space", IsReference = true)]
Run Code Online (Sandbox Code Playgroud)
我假设当存在DataContract属性时,WCF将忽略Serializable.这是正确的假设吗?如果没有,同时使用两者有什么好处?
我想将Bing Map V8控件添加到我的Anguar 2.0项目中.我想知道将Bing Map V8添加到Angular 2.0项目中需要做些什么.我附上了我的实施.我创建的组件无法加载.我如何引用Microsoft.Maps.Map?
这是bing map v8的一个例子.如果将以下示例保存为HTML,则一切正常.bing地图键已被剪裁.
<!DOCTYPE html>
<html>
<head>
<title>addOneLayerItemHTML</title>
<meta http-equiv='Content-Type' content='text/html; charset=utf-8'/>
</head>
<body>
<div id='printoutPanel'></div>
<div id='myMap' style='width: 100vw; height: 100vh;'></div>
<script type='text/javascript'>
function loadMapScenario() {
var map = new Microsoft.Maps.Map(document.getElementById('myMap'), {
credentials: 'My Bing Map Key - I removed here'
});
var pushpin = new Microsoft.Maps.Pushpin(map.getCenter(), null);
var layer = new Microsoft.Maps.Layer();
layer.add(pushpin);
map.layers.insert(layer);
}
</script>
<script type='text/javascript' src='http://www.bing.com/api/maps/mapcontrol?branch=experimental&callback=loadMapScenario' async defer></script>
</body>
</html>Run Code Online (Sandbox Code Playgroud)
她是我创建的文件map.component.html.
<div class='panel panel-primary'>
<div class='panel-heading'>
{{pageTitle}}
</div> …Run Code Online (Sandbox Code Playgroud)我想为现有日志消息上的所有消息添加类别前缀.但是,将此前缀逐个添加到所有现有日志记录消息中非常繁琐.有没有办法可以在类级别添加一个属性,那么这个类中的所有消息都会记录到某个类别?
而不是现在的方式如下,
Log.Info("[Ref] Level 1 Starts ...");
Run Code Online (Sandbox Code Playgroud)
我真的想要这样或类似的方式来定义log4net.ILog.
[LoggingCategory("Ref")]
public class MyClass
{
public void MyMethod()
{
Log.Info("Level 1 Starts ...");
}
}
Run Code Online (Sandbox Code Playgroud) 如何将.NET v4.0应用程序部署到某些目标服务器,而无法安装.NET v4.0?重新编译为v3.5也不可行,因为我一直在使用任务并行库.我应该使用NGen.exe吗?有没有人有经验?
.net ×4
c# ×4
log4net ×2
logging ×2
angular ×1
attributes ×1
bing-maps ×1
deployment ×1
javascript ×1
log4j ×1
svn ×1
tortoisesvn ×1
wcf ×1
web-services ×1