项目中使用NLog记录日志,很好用,之前一直放在文本文件中,准备放到db中,方便查询. 项目使用了Mysql,所以日志也放到Mysql上,安装NLog不用说,接着你需要安装Mysql.Data安装包: Install-Package MySql.Data 接着打开你的NLog,新增一个target: <target xsi:type="Database" name="mysqlDb" dbProvider="MySql.Data.MySqlClien…
在之前的文章中介绍了如何在ASP.NET Core使用NLog,本文为您介绍在ASP.NET Core使用NLog记录到Microsoft Sql Server 1.我们需要添加依赖: NLog.Web.AspNetCore System.Data.SqlClient 2.添加nlog.config文件 <?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nlog…
0.整体架构 整体架构目录:ASP.NET Core分布式项目实战-目录 一.介绍ELK 1.说明(此篇ELK采用rpm的方式安装在服务器上)-牛刀小试 承接上一篇文章的内容准备部署ELK来展示asp.net core 的数据.目前此篇文章只用到单台服务器,等下一篇将会介绍如何做到集群部署ELK+filebeat+MQ,因为这个集群部署才是真正体现大项目的价值.当然如果是小项目或者是内部项目单台足以. 当然ELK只是在业界用的比较多,但是里面所用的工具是可以替换的,比如说 如下: 体现价值的解决…
一.环境及工具 1.服务器 VirtualBox5.1.4 安装 Ubuntu Server 16.04 amd64 MySql Ver 14.14 Distrib 5.6.21 Jexus 5.8.1 nginx 1.10.0 dotnet core 1.0.0-preview2-003121 supervisor 3.2.1 2.开发环境 VS2015 + Update 3 DotNetCore.1.0.0-VS2015Tools.Preview2.0.1.exe 3.测试工具 HttpTe…
一.使用VisualStudioCode创建一个webapi项目(也可以是mvc等).一个类库(用于封装记录日志方法,当然如果使用依赖注入到控制台项目,就不需要此类库了). 二.在类库中添加NLog.NLog.Web.AspNetCore引用(NLog.Web.AspNetCore 是为 ASP.NET Core 添加了对于 NLog 的平台支持),        webapi项目添加对该类库的引用,这样控制台就无需添加nlog的引用了. 三.在类库中自定义类,简单封装记录日志方法,代码如下:…
1.创建一个新的ASP.NET Core项目 2.添加项目依赖 NLog.Web.AspNetCore 3.在项目目录下添加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/X…
1.新建ASP.NET Core项目 1.1选择项目 1.2选择.Net版本 2. 添加NLog插件 2.1 通过Nuget安装 2.2下载相关的插件 3.修改NLog配置文件 3.1添加NLog配置文件 3.2修改NLog.config配置文件 配置文件全部内容: <?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nlog-project.org/schema…
1.根目录新建nlog.config配置文件 <?xml version="1.0"?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true" internalLogLevel="Warn&qu…
1.NuGet 项目引用 NLog.Web.AspNetCore NLog.Targets.ElasticSearch 2.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…
NLog是一个配置灵活的日志记录类库,拥有输出日志到文件.存储入库.发送到udp地址的高级功能 1 添加 nlog nuget包 Nlog和NLog.Web.AspNetCore 安装完成后   2 在站点根目录下添加配置文件nlog.config <?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xs…
前一段尝试在azure.cn上部署Aps.net Core未成功,报503错误!在网上查到是Azure.cn的问题,未能完美支持Asp.net Core! Asp.net Core发表正式版了,又尝试了一下!部署成功!惊喜啊! 跟着问题又来了,我的项目中使用了Areas,部署完成后,Areas下面的功能均报错,英文的,大意是不能设置环境未Development! 又检查了一遍,不在Areas下的功能可以正常使用,问题出在Areas上! 查了一下文档,发现如下: Publishing Areas…
虽然该方法不会用在实际开发中,但该过程对于初学者还是非常友好的,真应了麻雀虽小,五脏俱全这句话了.好了不多废话了,直接开始!! 1.建立一个名为test的Asp.net core web应用程序 这一部分的目的是建立项目,并使用MVC框架. 2.导入依赖项(sqlite数据库 与 EF core) 这一部分的操作目的是可以让我们的项目可以使用操作数据库的一些功能. Microsoft.EntityFrameworkCore.Sqlite Microsoft.EntityFrameworkCore…
搭建基础框架准备试试传说中的Identity,本以为很顺利,结果一路踩了N多坑 遂就把过程记录下来.方便自己以后查看,也希望能帮到遇到同样问题的朋友. 1.首先,引入Identity需要的类库,还有Mysql的Nuget包 需要使用Code first的话,必须要引用Tools和Design两个包 2.然后DBContext必须实现IdentityDbContext这个类 3.如果需要修改IdentityUser和IdentityRole的主键类型,这两个类是泛型类,需要改啥类型可以自己重写 4…
一.新建DockerFile文件 选择Linux版本 FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-buster-slim AS base WORKDIR /app EXPOSE 80 FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster AS build WORKDIR /code COPY *.csproj ./ RUN dotnet restore COPY . ./ RUN dotnet publ…
使用 Pomelo.EntityFrameworkCore.MySql 生成 MySQL 数据库 关于如何使用请查看项目文档即可 组件地址:https://github.com/PomeloFoundation/Pomelo.EntityFrameworkCore.MySql 问题描述 遇到的是在使用 CodeFirst 生成数据库的字符集编码问题 执行迁移命令:Add-Migration 版本 , Update-Database 生成数据库(若无自动创建)的字符集为 latin1 -- cp1…
EntityFrameworkCore项目--Nuget包管理,卸载包: Microsoft.EntityFrameworkCore.SqlServer: EntityFrameworkCore项目和Host项目--Nuget包管理,添加包: Pomelo.EntityFrameworkCore.MySql: MySql.Data.EntityFrameworkCore: 修改你自己的[xxxDbContextConfigurer]文件: 删除原来sqlserver生成的迁移文件: 修改数据库连…
DI容器本质上是一个工厂,负责提供向它请求的类型的实例. .net core内置了一个轻量级的DI容器,方便开发人员面向接口编程和依赖倒置(IOC). 具体体现为Micorosoft.Extensions.DependencyInjection这个包. .net core中内置的DI容器包含两大要素:ServiceCollection和ServiceProvider. 为了便于理解,我画了一张图: 通过上面的UML类图可以看出ServiceCollection其实就是一个集合,存放接口和实现的对…
许久没用C#写程序.听说进来发生大事,.NetCore2.0发布了,于是便学习了下,本站也应运而生. 大多数的地方按照官方的文档起步走就可以了,这里谈谈遇到的几个坑. 首先,本站是基于ASP.NetCore2.0和EntityFrameWorkCore.Sqlite的,前端使用了layui,搭建于CentOS7上. ASP.NetCore部分没有什么难度,选择MVC方式,基本上和原来的asp.net mvc差不多.不过我也是很久没有用过mvc了,所以摸索了一下,tagHelper很好用. 主要说…
为了减少由于单个请求挂掉而拖垮整站的情况发生,给所有请求做统计是一个不错的解决方法,通过观察哪些请求的耗时比较长,我们就可以找到对应的接口.代码.数据表,做有针对性的优化可以提高效率.在 asp.net web api 中我们可以通过注册一个 DelegatingHandler 来实现该功能.那在 asp.net core 中该如何实现呢? 一:比较 asp.net web api 和 asp.net core 的请求管道 观察这两张图,可以发现他们非常的相似,都是管道式的设计,在 asp.ne…
#前言 我可能有三年没怎么碰C#了,目前的工作是在全职搞前端,最近有时间抽空看了一下Asp.net Core,Core版本号都到了5.0了,也越来越好用了,下面将记录一下这几天以来使用Asp.Net Core WebApi+Dapper+Mysql+Redis+Docker的一次开发过程. ## 项目结构 最终项目结构如下,CodeUin.Dapper数据访问层,CodeUin.WebApi应用层,其中涉及到具体业务逻辑的我将直接写在Controllers中,不再做过多分层.CodeUin.He…
Elasticsearch - 简介 Elasticsearch 作为核心的部分,是一个具有强大索引功能的文档存储库,并且可以通过 REST API 来搜索数据.它使用 Java 编写,基于 Apache Lucene,尽管这些细节隐藏在 API 中.通过被索引的字段,可以用许多不同的聚合方式找到任何被存储(索引)的文档.但是,ElasticSearch不仅仅只提供对这些被索引文档的强大搜索功能.快速.分布式.水平扩展,支持实时文档存储和分析,支持数百台服务器和 PB 级索引数据.同时作为 El…
ASP.NET Core 中使用 MySql,如果字段类型为varchar,不管设置多少长度,插入或更新数据的时候,会自动截断(截取 255 长度的字符). 出现问题的原因,就是使用了MySql.Data.EntityFrameworkCore程序包(我使用的版本是7.0.7-m6),可能是其版本问题,升级版本的话,可能问题不会出现了. 解决方式:将 MySql 所有字段类型为varchar(字段长度大于 255)的字段,类型都改为text(可以不设长度,默认为 0). 然后,EF Core 映…
ASP.NET Core操作MySql数据库, 这样整套环境都可以布署在Linux上 使用微软的 Microsoft.EntityFrameworkCore(2.1.4) 和MySql出的 MySql.Data.EntityFrameworkCore(8.0.13) 软件版本 Asp.net Core:2.1 MySql:5.6 项目结构 Snai.Mysql 是 Asp.net core 2.0 Api网站,Database 下的是MySql建库建表脚本 项目实现 一.MySql 建库建表 使…
本文转自:https://github.com/NLog/NLog/issues/1366 In the previous versions of NLog it was easily possible to map custom log properties to custom database columns using LogEventInfo and ${event-properties} layout renderer: LogEventInfo evt = new LogEventI…
一. Asp.Net Core内置日志 1. 默认支持三种输出方式:控制台.调试(底部输出窗口).EventSource,当然也可以在Program类中通过logging.ClearProviders();先删除,然后再决定加载哪种输出方式. 2. 创建ILogger对象的两种方式: ①. 通过构造函数注入,ILogger<T> 获取一个 ILogger 实例,该实例使用 T 的完全限定类型名称作为类别,如下:log ②. 通过构造函数注入ILoggerFactory,然后调用ILoggerF…
  Asp.Net Core 2.0 + Mysql Orm + Ioc + Redis + AOP + RabbitMQ + Etcd + Autofac + Swagger 基础框架: https://github.com/AmosLi443061626/.Net-Core-Development Etcd数据库分表分库是中间件去分:https://github.com/AmosLi443061626/EtcdWebMannger 以前是注册与发现,接入了thrift后面发现docker  …
ASP.NET Core+LayUI+MySql CMS管理后台,主要功能包括 登录.修改密码,账号管理,菜单管理,角色权限管理等 由于工作之外,抽时间写的,用于学习交流,请慎重用于生产环境 项目概要 CMS管理后台包含的功能有 登录.修改密码.账号管理(账号列表,添加,修改,删除,禁/启用,解锁).菜单管理(菜单列表,添加,修改,删除,禁/启用).角色权限管理(角色列表,添加,修改,删除,禁/启用,分配权限)等后台最基础的功能. CMS管理后台使用的ASP.NET Core MVC模式,Lay…
这个日志框架使用的是ASP.NET Core的NLog,用来记录每次请求信息和返回信息. 1.首先创建一个Web应用项目,我选择的是MVC模板: 2.使用NuGet添加Microsoft.Extensions.Logging和NLog.Extensions.Logging 3.修改Configure方法: public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFac…
好久不见,前两周经历了人生第一次"伪牛市",基金和股市大起大落,更加坚信"你永远赚不到超出你认知范围之外的钱,除非靠着运气",老韭菜诚不欺我也. 当能力与野心不匹配,只能多看书,收割那些不求甚解的韭菜. 言归正传,本文聊一聊在ASP.NET Core3.1中集成ElasticSearch.Kibana日志查询系统. 我们为什么需要ElasticSearch.Kibana? 成熟的应用程序,会在各个阶段以各种姿势记录日志,这些日志包括(但不限于)nginx日志.pod…
原文:Areas 作者:Dhananjay Kumar 和 Rick Anderson 翻译:耿晓亮(Blue) 校对:许登洋(Seay) Areas 是 ASP.NET MVC 用来将相关功能组织成一组单独命名空间(路由)和文件夹结构(视图)的功能.使用 Areas 创建层次结构的路由,是通过添加另一个路由参数 area 到 Controller 和 action. Areas 提供了一种把大型 ASP.NET Core MVC Web 应用程序分为较小的功能分组的方法.Area 是应用程序内…