NLog.config 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  3. <targets async="true">
  4. <target name="ServerDebug" xsi:type="File"
  5. openFileCacheTimeout="10"
  6. keepFileOpen="true"
  7. archiveNumbering="Date"
  8. archiveEvery="Hour"
  9. archiveDateFormat="yyyyMMddHH"
  10. archiveFileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.{#}.Debug.log"
  11. fileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.${date:format=yyyyMMddHH}.Debug.log"
  12. deleteOldFileOnStartup="false"
  13. layout="${longdate} ${callsite:className=false:methodName=false:fileName=true:includeSourcePath=false:skipFrames=2} ${message}" />
  14. </targets>
  15. <targets async="true">
  16. <target name="ServerInfo" xsi:type="File"
  17. bufferSize="10240"
  18. openFileCacheTimeout="30"
  19. keepFileOpen="true"
  20. archiveNumbering="Date"
  21. archiveEvery="Hour"
  22. archiveDateFormat="yyyyMMddHH"
  23. archiveFileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.{#}.Info.log"
  24. fileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.${date:format=yyyyMMddHH}.Info.log"
  25. deleteOldFileOnStartup="false"
  26. layout="${longdate} ${message}" />
  27. </targets>
  28. <targets async="true">
  29. <target name="ServerWarn" xsi:type="File"
  30. bufferSize="10240"
  31. openFileCacheTimeout="30"
  32. keepFileOpen="true"
  33. archiveNumbering="Date"
  34. archiveEvery="Hour"
  35. archiveDateFormat="yyyyMMddHH"
  36. archiveFileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.{#}.Warn.log"
  37. fileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.${date:format=yyyyMMddHH}.Warn.log"
  38. deleteOldFileOnStartup="false"
  39. layout="${longdate} ${message}" />
  40. </targets>
  41. <targets async="true">
  42. <target name="ServerError" xsi:type="File"
  43. openFileCacheTimeout="10"
  44. keepFileOpen="true"
  45. archiveNumbering="Date"
  46. archiveEvery="Hour"
  47. archiveDateFormat="yyyyMMddHH"
  48. archiveFileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.{#}.Error.log"
  49. fileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.${date:format=yyyyMMddHH}.Error.log"
  50. deleteOldFileOnStartup="false"
  51. layout="${longdate} ${message}" />
  52. </targets>
  53. <targets async="true">
  54. <target name="ErrorConsole" xsi:type="Console" layout="${longdate} ${message}" />
  55. </targets>
  56. <targets async="true">
  57. <target name="RobotDebug" xsi:type="File"
  58. openFileCacheTimeout="10"
  59. keepFileOpen="true"
  60. archiveNumbering="Date"
  61. archiveEvery="Hour"
  62. archiveDateFormat="yyyyMMddHH"
  63. archiveFileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.{#}.Debug.log"
  64. fileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.${date:format=yyyyMMddHH}.Debug.log"
  65. deleteOldFileOnStartup="false"
  66. layout="${longdate} ${callsite:className=false:methodName=false:fileName=true:includeSourcePath=false:skipFrames=2} ${message}" />
  67. </targets>
  68. <targets async="true">
  69. <target name="RobotInfo" xsi:type="File"
  70. bufferSize="10240"
  71. openFileCacheTimeout="30"
  72. keepFileOpen="true"
  73. archiveNumbering="Date"
  74. archiveEvery="Hour"
  75. archiveDateFormat="yyyyMMddHH"
  76. archiveFileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.{#}.Info.log"
  77. fileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.${date:format=yyyyMMddHH}.Info.log"
  78. deleteOldFileOnStartup="false"
  79. layout="${longdate} ${message}" />
  80. </targets>
  81. <targets async="true">
  82. <target name="RobotWarn" xsi:type="File"
  83. bufferSize="10240"
  84. openFileCacheTimeout="30"
  85. keepFileOpen="true"
  86. archiveNumbering="Date"
  87. archiveEvery="Hour"
  88. archiveDateFormat="yyyyMMddHH"
  89. archiveFileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.{#}.Warn.log"
  90. fileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.${date:format=yyyyMMddHH}.Warn.log"
  91. deleteOldFileOnStartup="false"
  92. layout="${longdate} ${message}" />
  93. </targets>
  94. <targets async="true">
  95. <target name="RobotError" xsi:type="File"
  96. openFileCacheTimeout="10"
  97. keepFileOpen="true"
  98. archiveNumbering="Date"
  99. archiveEvery="Hour"
  100. archiveDateFormat="yyyyMMddHH"
  101. archiveFileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.{#}.Error.log"
  102. fileName="${basedir}/../Logs/${date:format=yyyyMMdd}/${logger}.${var:appIdFormat}.${date:format=yyyyMMddHH}.Error.log"
  103. deleteOldFileOnStartup="false"
  104. layout="${longdate} ${message}" />
  105. </targets>
  106. <targets async="true">
  107. <target name="Watcher" xsi:type="File"
  108. openFileCacheTimeout="10"
  109. keepFileOpen="true"
  110. fileName="${basedir}/../Logs/${logger}.${var:appIdFormat}.Debug.log"
  111. deleteOldFileOnStartup="false"
  112. layout="${longdate} ${callsite:className=false:methodName=false:fileName=true:includeSourcePath=false:skipFrames=2} ${message}" />
  113. </targets>
  114. <targets async="true">
  115. <target name="RobotConsole" xsi:type="Console" layout="${message}" />
  116. </targets>
  117. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  118. <target name="GFGLogInfo" xsi:type="File"
  119. openFileCacheTimeout="10"
  120. keepFileOpen="true"
  121. archiveNumbering="Date"
  122. archiveEvery="Hour"
  123. archiveDateFormat="yyyyMMddHH"
  124. archiveFileName="${basedir}/../GFGLogs/GFGLog/{#}.log"
  125. fileName="${basedir}/../GFGLogs/GFGLog/${date:format=yyyyMMddHH}.log"
  126. bufferSize="10485760"
  127. layout="${message}" />
  128. </targets>
  129. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  130. <target name="GFGOrderLogInfo" xsi:type="File"
  131. openFileCacheTimeout="10"
  132. keepFileOpen="true"
  133. archiveNumbering="Date"
  134. archiveEvery="Hour"
  135. archiveDateFormat="yyyyMMddHH"
  136. archiveFileName="${basedir}/../GFGLogs/GFGOrderLog/{#}.log"
  137. fileName="${basedir}/../GFGLogs/GFGOrderLog/${date:format=yyyyMMddHH}.log"
  138. bufferSize="10485760"
  139. layout="${message}" />
  140. </targets>
  141. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  142. <target name="GFGCoreLogInfo" xsi:type="File"
  143. openFileCacheTimeout="10"
  144. keepFileOpen="true"
  145. archiveNumbering="Date"
  146. archiveEvery="Hour"
  147. archiveDateFormat="yyyyMMddHH"
  148. archiveFileName="${basedir}/../GFGLogs/GFGCoreLog/{#}.log"
  149. fileName="${basedir}/../GFGLogs/GFGCoreLog/${date:format=yyyyMMddHH}.log"
  150. bufferSize="10485760"
  151. layout="${message}" />
  152. </targets>
  153. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  154. <target name="PayToAccountLogInfo" xsi:type="File"
  155. openFileCacheTimeout="10"
  156. keepFileOpen="true"
  157. archiveNumbering="Date"
  158. archiveEvery="Hour"
  159. archiveDateFormat="yyyyMMddHH"
  160. archiveFileName="${basedir}/../GFGLogs/PayToAccountLogInfo/{#}.log"
  161. fileName="${basedir}/../GFGLogs/PayToAccountLogInfo/${date:format=yyyyMMddHH}.log"
  162. bufferSize="10485760"
  163. layout="${message}" />
  164. </targets>
  165. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  166. <target name="GFGLogInfoRobotLog" xsi:type="File"
  167. openFileCacheTimeout="10"
  168. keepFileOpen="true"
  169. archiveNumbering="Date"
  170. archiveEvery="Hour"
  171. archiveDateFormat="yyyyMMddHH"
  172. archiveFileName="${basedir}/../GFGLogRobot/1/{#}.log"
  173. fileName="${basedir}/../GFGLogRobot/1/${date:format=yyyyMMddHH}.log"
  174. bufferSize="10485760"
  175. layout="${message}" />
  176. </targets>
  177. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  178. <target name="GFGOrderLogInfoRobotLog" xsi:type="File"
  179. openFileCacheTimeout="10"
  180. keepFileOpen="true"
  181. archiveNumbering="Date"
  182. archiveEvery="Hour"
  183. archiveDateFormat="yyyyMMddHH"
  184. archiveFileName="${basedir}/../GFGLogRobot/2/{#}.log"
  185. fileName="${basedir}/../GFGLogRobot/2/${date:format=yyyyMMddHH}.log"
  186. bufferSize="10485760"
  187. layout="${message}" />
  188. </targets>
  189. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  190. <target name="GFGCoreLogInfoRobotLog" xsi:type="File"
  191. openFileCacheTimeout="10"
  192. keepFileOpen="true"
  193. archiveNumbering="Date"
  194. archiveEvery="Hour"
  195. archiveDateFormat="yyyyMMddHH"
  196. archiveFileName="${basedir}/../GFGLogRobot/3/{#}.log"
  197. fileName="${basedir}/../GFGLogRobot/3/${date:format=yyyyMMddHH}.log"
  198. bufferSize="10485760"
  199. layout="${message}" />
  200. </targets>
  201. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  202. <target name="PayToAccountLogInfoRobotLog" xsi:type="File"
  203. openFileCacheTimeout="10"
  204. keepFileOpen="true"
  205. archiveNumbering="Date"
  206. archiveEvery="Hour"
  207. archiveDateFormat="yyyyMMddHH"
  208. archiveFileName="${basedir}/../GFGLogRobot/4/{#}.log"
  209. fileName="${basedir}/../GFGLogRobot/4/${date:format=yyyyMMddHH}.log"
  210. bufferSize="10485760"
  211. layout="${message}" />
  212. </targets>
  213. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  214. <target name="GFGLogInfoRobotLog2" xsi:type="File"
  215. openFileCacheTimeout="10"
  216. keepFileOpen="true"
  217. archiveNumbering="Date"
  218. archiveEvery="Hour"
  219. archiveDateFormat="yyyyMMddHH"
  220. archiveFileName="${basedir}/../GFGLogRobot/5/{#}.log"
  221. fileName="${basedir}/../GFGLogRobot/5/${date:format=yyyyMMddHH}.log"
  222. bufferSize="10485760"
  223. layout="${message}" />
  224. </targets>
  225. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  226. <target name="GFGOrderLogInfoRobotLog2" xsi:type="File"
  227. openFileCacheTimeout="10"
  228. keepFileOpen="true"
  229. archiveNumbering="Date"
  230. archiveEvery="Hour"
  231. archiveDateFormat="yyyyMMddHH"
  232. archiveFileName="${basedir}/../GFGLogRobot/6/{#}.log"
  233. fileName="${basedir}/../GFGLogRobot/6/${date:format=yyyyMMddHH}.log"
  234. bufferSize="10485760"
  235. layout="${message}" />
  236. </targets>
  237. <targets xsi:type="BufferingWrapper" bufferSize="2000" flushTimeout="5000" slidingTimeout="false">
  238. <target name="GFGOrderLogInfoRobotLog7" xsi:type="File"
  239. openFileCacheTimeout="10"
  240. keepFileOpen="true"
  241. archiveNumbering="Date"
  242. archiveEvery="Hour"
  243. archiveDateFormat="yyyyMMddHH"
  244. archiveFileName="${basedir}/../GFGLogRobot/7/{#}.log"
  245. fileName="${basedir}/../GFGLogRobot/7/${date:format=yyyyMMddHH}.log"
  246. bufferSize="10485760"
  247. layout="${message}" />
  248. </targets>
  249. <rules>
  250. <logger ruleName="ServerDebug" name="Server" minlevel="Trace" maxlevel="Error" writeTo="ServerDebug" />
  251. <logger ruleName="ServerInfo" name="Server" minlevel="Info" maxlevel="Info" writeTo="ServerInfo" />
  252. <logger ruleName="ServerWarn" name="Server" minlevel="Warn" maxlevel="Warn" writeTo="ServerWarn" />
  253. <logger ruleName="ServerError" name="Server" minlevel="Error" maxlevel="Error" writeTo="ServerError" />
  254. <logger ruleName="ErrorConsole" name="Server" minlevel="Warn" maxlevel="Error" writeTo="ErrorConsole"
  255. enabled="false" />
  256. <logger ruleName="RobotDebug" name="Robot" minlevel="Trace" maxlevel="Error" writeTo="RobotDebug" />
  257. <logger ruleName="RobotInfo" name="Robot" minlevel="Trace" maxlevel="Error" writeTo="RobotInfo" />
  258. <logger ruleName="RobotWarn" name="Robot" minlevel="Warn" maxlevel="Warn" writeTo="RobotWarn" />
  259. <logger ruleName="RobotError" name="Robot" minlevel="Error" maxlevel="Error" writeTo="RobotError" />
  260. <logger ruleName="RobotConsole" name="Robot" minlevel="Info" maxlevel="Error" writeTo="RobotConsole" />
  261. <logger ruleName="Watcher" name="Watcher" minlevel="Trace" maxlevel="Error" writeTo="Watcher" />
  262. <!--物品,节点等日志-->
  263. <logger ruleName="GFGLogInfo" name="GFGLog" minlevel="Info" maxlevel="Info" writeTo="GFGLogInfo" />
  264. <!--只存放订单日志,也就是关于钱的日志-->
  265. <logger ruleName="GFGOrderLogInfo" name="GFGLog" minlevel="Warn" maxlevel="Warn" writeTo="GFGOrderLogInfo" />
  266. <!--创角账户,创角角色,活跃留存统计相关的日志(因为我发现大家都比较关注留存这种数据,所以我把这部分数据独立出来,更方便核对数据)-->
  267. <logger ruleName="GFGCoreLogInfo" name="GFGLog" minlevel="Debug" maxlevel="Debug" writeTo="GFGCoreLogInfo" />
  268. <!--订单充值成功,添加物品成功日志-->
  269. <logger ruleName="PayToAccountLogInfo" name="GFGLog" minlevel="Trace" maxlevel="Trace" writeTo="PayToAccountLogInfo" />
  270. <!--1、拿齐许愿套装 -->
  271. <logger ruleName="GFGLogInfoRobotLog" name="RobotLog" minlevel="Info" maxlevel="Info" writeTo="GFGLogInfoRobotLog" />
  272. <!--2、拿齐两套衣服 拿齐这个掉落30000035-->
  273. <logger ruleName="GFGOrderLogInfoRobotLog" name="RobotLog" minlevel="Warn" maxlevel="Warn" writeTo="GFGOrderLogInfoRobotLog" />
  274. <!--3、第一次拿到卡牌-->
  275. <logger ruleName="GFGCoreLogInfoRobotLog" name="RobotLog" minlevel="Debug" maxlevel="Debug" writeTo="GFGCoreLogInfoRobotLog" />
  276. <!--4、第二次拿到卡牌-->
  277. <logger ruleName="PayToAccountLogInfoRobotLog" name="RobotLog" minlevel="Trace" maxlevel="Trace" writeTo="PayToAccountLogInfoRobotLog" />
  278. <!--5、第三次拿到卡牌-->
  279. <logger ruleName="GFGLogInfoRobotLog2" name="RobotLog2" minlevel="Info" maxlevel="Info" writeTo="GFGLogInfoRobotLog2" />
  280. <!--6、拿齐两套衣服+两张不同的卡牌-->
  281. <logger ruleName="GFGOrderLogInfoRobotLog2" name="RobotLog2" minlevel="Warn" maxlevel="Warn" writeTo="GFGOrderLogInfoRobotLog2" />
  282. <!--7、拿齐两套衣服之后出天衣的次数-->
  283. <logger ruleName="GFGOrderLogInfoRobotLog7" name="RobotLog2" minlevel="Debug" maxlevel="Debug" writeTo="GFGOrderLogInfoRobotLog7" />
  284. </rules>
  285. </nlog>