nlog

webapi日志记录(TXT存储)

痞子三分冷 提交于 2020-03-10 19:46:05
记录webapi日志我使用了两种办法,一种是存储TXT的log文档,但我发现使用使用了我接口的日志都会存储到我电脑上。后面改用数据库存储log。数据库存储log信息这种方法个人比较推荐。之前花费了一些时间来写TXT存储还是想记录下来。 转载自:https://blog.csdn.net/lordwish/article/details/72353851 1、引用NLog类库 打开项目的NuGet包管理器,搜索NLog,为项目添加程序包引用。 2、修改项目配置文件 在webAPI项目的Web.config中进行NLog的配置。首先在节点configuration>configSections下添加节点: 此处name必需为nlog,否则配置信息将不能被读取。 然后在configuration节点下添加节点nlog: 这里定义了日志文件的保存路径、命名格式以及日志记录类型和监听级别。 注意:<configSections>必须要紧跟在<configuration>下方 <configuration> <configSections> <section name="nlog" type="NLog.Config.ConfigSectionHandler,NLog" /> </configSections> <nlog xmlns:xsi="http://www.w3.org/2001

nlog 配置

拈花ヽ惹草 提交于 2020-03-07 14:24:51
using NLog; using NLog.Config; using NLog.Targets; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Dben.CommonLib { public static class NLogDefaultConfig { public static void InitNlogInfo() { const string layout = @"${date:format=HH\:mm\:ss}[${logger}]${message}"; var consoleTarget = new ColoredConsoleTarget() { Layout = layout }; var fileTarget = new FileTarget() { FileName = "${basedir}/logs/${logger}/${shortdate}.txt", Layout = layout }; var config = new LoggingConfiguration(); config.AddTarget("console",

My NLog record is not saving. Where can I see my save failures for NLog?

亡梦爱人 提交于 2020-03-05 00:30:46
问题 I have 2 NLog database targets. The first one has been working. The second one that I just added does not seem to save when I check the table in the database.. However, I get no exception to look at for debugging.. Is there something I can turn on? Or somewhere I need to look? Maybe if there are any NLog experts, they can see a simple mistake I may have made? Here is my code for creating the NLog configuration: // nlog config (ExceptionTracking) LogManager.ThrowExceptions = true; // Using

QQ 机器人SDK Newbe.Mahua 2.2 可用性修复

拥有回忆 提交于 2020-02-28 22:49:07
版本亮点 可用性修复 修复了以下平台近期由于平台更新导致 SDK 不可用的问题: CQP CleverQQ 虽说该版本是一个次要更新版本,但实际上现在版本在这两个平台上已经完全失效,必须升级为最新版本。 下载了源码的开发者,可以根据最新提交的代码 diff 来修正自己项目 优化 Installer 安装速度 在国内仍然有开发者反映依赖于 nuget 的模板下载安装速度不快。 因此,我们将最新的项目模板所需要的文件都进行了“离线化”处理,使得下载过程更加流畅。 由于有初学开发者无法区别“下载HTML”和“下载脚本”的区别,因此,我们制作了打包下载的方式托管于码云上。 点击此处查看Installer压缩包 升级方法与要点 使用命令行在机器人exe根目录运行以下命令 mahua InstallMahua 注意:升级过程将会覆盖以下配置文件,若开发者有自行定制过这些配置项,需要先自行备份: mahua.json NLog.config 本篇文章由一文多发平台 ArtiPub 自动发布 来源: oschina 链接: https://my.oschina.net/u/2308136/blog/3110503

纯函数式编程的效率

房东的猫 提交于 2020-02-28 10:27:44
有谁知道纯功能编程而不是强制性编程(即允许副作用)发生时,最糟糕的渐近减速可能是什么? 从itowlson的评论中澄清 :是否存在最知名的非破坏性算法比最知名的破坏性算法渐近恶化的问题? #1楼 本文 声称, 联合查找算法 的已知纯功能实现都比它们发布的 算法 具有更差的渐进复杂度,后者具有纯功能接口,但内部使用可变数据。 其他答案声称永远没有任何区别,例如,纯功能代码的唯一“缺点”是它可以并行化,这一事实使您对功能编程社区在这些问题上的了解程度/客观性有所了解。 编辑: 下面的评论指出,对纯函数式编程的优缺点的偏颇的讨论可能不会来自“函数式编程社区”。 好点子。 也许我看到的倡导者只是在评论中说是“文盲”。 例如,我认为该 博客文章 是由可以说是功能编程社区代表的人撰写的,并且由于它是“懒惰评估的要点”列表,因此,它是提及任何缺点的好地方懒惰和纯函数式编程可能具有。 解雇以下人员是一个不错的选择(从技术上讲是正确的,但偏向于不搞笑): 如果严格函数在严格语言中具有O(f(n))复杂度,那么在懒惰语言中函数也具有O(f(n))复杂性。 为什么要担心? :) #2楼 我建议阅读 Haskell的性能 ,然后看一下功能语言与程序/ OO语言的 基准游戏 性能。 #3楼 根据 Pippenger [1996]的研究 ,当将纯功能的Lisp系统(具有严格的评估语义,而不是惰性的

每天AC系列(二):最接近的三数之和

∥☆過路亽.° 提交于 2020-02-26 14:33:08
1 题目 leetcode第16题 ,给定一个数组与一个目标数,找出数组中其中的三个数,这三个数的和要与目标数最接近。 2 暴力 按惯例先来一次O(n3)的暴力: int temp = nums[0]+nums[1]+nums[2]; for(int i=0;i<nums.length;++i) for(int j=i+1;j<nums.length;++j) for(int k=j+1;k<nums.length;++k) { int temp1 = nums[i]+nums[j]+nums[k]; if(Math.abs(temp-target) > Math.abs(temp1-target)) { temp = temp1; if(temp == target) return target; } } return temp; 然后。。。。 受宠若惊啊,直接暴力居然给过了。。。 3 O(n2) 算了,这种暴力笔者自己也看不下去,搞点正经事,暴力的话直接三个循环,每一次都加三个数并判断与target的距离,如果是target直接返回,如果不是则继续,但是...O(n3)啊... 其实这也可以用笔者 上一篇文章 中提到的双指针法,先对数组排序,然后固定一个数,再用两个指针指向起始端与末端,然后不断向中间逼近。 Arrays.sort(nums); int t1 = nums[0]

如何建立堆的时间复杂度为O(n)?

喜夏-厌秋 提交于 2020-02-26 11:35:50
有人可以帮助解释如何建立堆的O(n)复杂性吗? 将项目插入到堆中是 O(log n) ,并且插入重复n / 2次(其余为叶子,并且不能违反堆属性)。 因此,我认为这意味着复杂度应为 O(n log n) 。 换句话说,对于我们“堆集”的每个项目,它有可能必须为到目前为止的堆的每个级别(即log n个级别)过滤一次。 我想念什么? #1楼 在建立堆时,可以说您正在采用自下而上的方法。 您将每个元素与它的子元素进行比较,以检查该对是否符合堆规则。 因此,叶子是免费包含在堆中的。 那是因为他们没有孩子。 向上移动,叶子上方的节点的最坏情况是1个比较(最多将它们与一代子代进行比较) 再往前看,他们的直系父母最多可以与两代孩子相提并论。 朝着同一方向继续,在最坏的情况下,您将获得根的log(n)比较。 对于直系子代为log(n)-1,直系子代为log(n)-2,依此类推。 总结一下,您得出的结果类似于log(n)+ {log(n)-1} * 2 + {log(n)-2} * 4 + ..... + 1 * 2 ^ {( logn)-1}就是O(n)。 #2楼 直观地: “复杂度应该是O(nLog n)...对于我们“堆砌”的每个项目,到目前为止,它有可能必须为堆的每个级别(即log n个级别)过滤一次。 不完全的。 您的逻辑不会产生严格的界限,而是会高估每个堆化的复杂性。 如果从下而上构建

Should NLog flush all queued messages in the AsyncTargetWrapper when Flush() is called?

a 夏天 提交于 2020-02-19 09:33:09
问题 I want to shut down my application and write any pending log messages. So I call LogManager.Flush() during my shutdown process. However, I don't see all the messages written out. Instead, if I wait for a few seconds (using Thread.Sleep() ) I see the messages. After examining NLog's code on GitHUB, I find the AsyncTargetWrapper.FlushAsync() method is only scheduling the lazy writer thread to write all pending messages on the next batch. It is not writing log messages synchronously. Is this the

开源DDD设计模式框架YMNNetCoreFrameWork第6篇-.net Core Logging和Nlog结合

∥☆過路亽.° 提交于 2020-02-07 22:02:00
源码地址:https://github.com/topgunymn/YMNNetCoreFrameWork 遇到的坑:使用了Nlog以后,.NETcore自带的日志等级不起作用,只有nlog配置配置文件才能控制他的日志等级 1、.NET core增加NLog日志,.NET CORE自带的日志无法保存到文件,所以使用NLOG 2、下载NLog.Web.AspNetCore 3、注入nlog //添加NLog loggerFactory.AddNLog(); //读取Nlog配置文件 env.ConfigureNLog("NLog.config"); 4、配置文件 <?xml version="1.0" encoding="utf-8"?> <!--<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" internalLogLevel="Info" internalLogFile="c:\temp\internal-nlog.txt">--> <!-- 自动查找Nlog.XML文件--> <nlog xmlns="http://www.nlog-project.org

ASP.NET Core使用Elasticsearch记录NLog日志

前提是你 提交于 2020-02-06 07:48:02
ASP.NET Core使用Elasticsearch记录NLog日志 1、新建一个 ASP.NET Core项目 2、安装Nuge包 运行: Install-Package NLog.Web.AspNetCore 运行: Install-Package NLog 运行: Install-package NLog.Targets.ElasticSearch 3、编写NLog配置文件(NLog.config) <?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" internalLogToConsole="true"> <extensions> <add assembly="NLog.Targets.ElasticSearch"/> </extensions> ​ <targets> <target name="ElasticSearch" xsi:type="ElasticSearch" ConnectionStringName="http://localhost:9200" index="Jon.NLog-${date:format