我使用.net reactor对我的应用程序进行了模糊处理。应用程序正常工作,然后在某些地方通过log4net创建的日志文件中的方法名称将作为随机字符串。 奇怪的是在同一方法中不同的日志会带来不同的行为。一些使用实际方法名称,而另一些使用随机方法名称。 e.g,
我的log4net appender是
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender" >
<file value="..\\Logs\\MyApp_N1" />
<encoding value="utf-8" />
<appendToFile value="true" />
<datePattern value="_yyyyMMdd'.log'" />
<staticLogFileName value="false" />
<rollingStyle value="Composite"/>
<maxSizeRollBackups value="-1"/>
<maximumFileSize value="10MB"/>
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<filter type="log4net.Filter.LevelRangeFilter">
<acceptOnMatch value="true" />
<levelMin value="DEBUG" />
<levelMax value="FATAL" />
</filter>
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%d{yyyy-MM-dd HH:mm:ss.fff}	%p	MyApp	N1	%t	%c{1}.%M	%property{SessionId}	%m%n" />
</layout>
</appender>
log4net版本2.0.8 .net reactor版本5.0
示例日志消息
2017-12-08 15:17:33.722 DEBUG TWS N1 13 MyclassName.SendMessage我的方法开始
2017-12-08 15:17:33.840 DEBUG TWS N1 13 MyclassName.urT1VHsGarQ1gTcc8O消息请求添加db id = 166364
2017-12-08 15:17:33.852 DEBUG TWS N1 13 MyclassName.SendMessage消息服务 - 发送结束
答案 0 :(得分:0)
如果方法“ urT1VHsGarQ1gTcc8O”不是公共方法,则这是预期的输出。
要混淆所有公共类和方法,您需要将“ 2.保护设置”->“混淆”->“混淆公共类型”设置为“ True”。