asp.net core 错误定位 & vs2017 远程调试部署在centos上的asp.net core程序
前言
程序运行中会出现各种BUG。 排除BUG有三种方式。
一、访问页面直接报错误信息
出于安全,服务器是关闭这个功能的。在centos上可以用 命令设置环境变量来解决: export ASPNETCORE_ENVIRONMENT=Development
二、console输出
console.WriteLine(" hello");
三、日志
使用组件 NLog.Web.AspNetCore 来实现 写入文件、console、db、email等
https://github.com/NLog/NLog.Web/wiki/Getting-started-with-ASP.NET-Core-2
三、远程调试
有时候必须在服务器上调试代码。比如做微信公众号开发,需要做一些url回调, 此时无法在开发电脑上做调试。所以远程调试代码就很有必要了。经过2个小时摸索,顺利实现。 (注意:用jexus时无法远程调试,因为jexus隐藏了dotnet进程,它把dotnet作为自己的子进程,所以无法附加dotnet进程.)
1.在vs2017中设置centos服务器ssh连接信息
菜单 工具-》选项 跨平台-- 连接管理器,如下图,添加ssh服务器
2.在centos服务器上安装unzip软件
调试器第一次附加程序时要下载一些zip格式的软件包,需要解压,因此要安装unzip
在centos上运行命令: yum install -y unzip zip
3.编译程序,上传服务器并运行
a. debug模式下编译程序,将程序dll文件和对应的.pdb文件上传到服务器。 (dll和pdb一定要是同时生成的,否则不匹配无法命中断点)
注意,.net core程序需要做一些修改:
1)https功能实现要在.net core程序内部实现
2)443端口启用也要指定
b. 终端执行 dotnet xxx.dll 运行程序
4.通过附加到进程实现远程调试
vs2017点菜单 调试-》附加到进程
选择dotnet进程,点附加
选managed,确定,此时vs2017就处于调试状态了,可以设一个断点。如果断点无法设置,可以看看输出窗口里的提示信息,根据提示信息一般可以解决问题。如果找不到原因,把centos上的dotnet程序重启一下,vs2017也重启一下再试。
--------------------- 本文来自 soband_xiang 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/soband_xiang/article/details/82914195?utm_source=copy
asp.net core 错误定位 & vs2017 远程调试部署在centos上的asp.net core程序的更多相关文章
- 使用visual c++ 2005远程调试64位系统上32位与64位程序
一直都挺喜欢使用visual c++远程调试代码,它能展现给我们当时代码执行最真实的情景,今天有时间记录一下,以免以后忘了. 远程调试需要在被调试端安装服务器,对于visual c++ 2005来说调 ...
- VS2017 远程调试linux(centos).net core
第一步建立链接 Tools > Options > Cross Platform > Connection Manage 工具>选项>跨平台>连接管理器 第二步骤 ...
- VS2017 远程调试linux(centos).net core程序(通过附加程序的方式)
参考两位大神的帖子: https://blog.csdn.net/soband_xiang/article/details/82914195 https://blog.csdn.net/weixin_ ...
- VS2017 远程调试小记
VS2017 远程调试小记 支持windows\linux\macos, 直接连接项目点的上线版本代码进行调试.保证bug在同个环境下实时追踪. 注意点 双方的 msvsmon.exe版本需一致,最好 ...
- Visual Studio 调试系列12 远程调试部署在远程计算机IIS上的ASP.NET应用程序
系列目录 [已更新最新开发文章,点击查看详细] 要调试已部署到IIS的ASP.NET应用程序,请在部署应用程序的计算机上安装并运行远程工具,然后从Visual Studio附加到正在运行的应用 ...
- VS2017远程调试C#或 Visual Studio 中的 Visual Basic 项目
来源:远程调试C#或 Visual Studio 中的 Visual Basic 项目 若要调试已部署在另一台计算机的 Visual Studio 应用程序,安装和在其中部署您的应用程序的计算机上运行 ...
- vs2017远程调试
使用情景:服务器端程序出了问题,但本地开发环境又无法模拟.此时需要使用VS进行远程调试. 使用方法: 找到VS安装路径,将Remote Debuuger拷贝到服务器端 (注意一定要和你本地运行的VS版 ...
- Windows平台部署 Asp.Net Core 3.1.0,将 ASP.NET Core 应用发布到 IIS ,使用 IIS 在 Windows 上托管 ASP.NET Core
第一部分:本教程介绍如何在 IIS 服务器上托管 ASP.NET Core 应用. 官方文档地址:https://docs.microsoft.com/zh-cn/aspnet/core/tutori ...
- 1.6部署到CentOS「深入浅出ASP.NET Core系列」
希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. 安装.NET Core 官方安装地址: https://www.microsoft.com/net/learn/d ...
随机推荐
- Flink学习笔记:Operators串烧
本文为<Flink大数据项目实战>学习笔记,想通过视频系统学习Flink这个最火爆的大数据计算框架的同学,推荐学习课程: Flink大数据项目实战:http://t.cn/EJtKhaz ...
- 最小生成树(Prim算法+Kruskal算法)
什么是最小生成树(MST)? 给定一个带权的无向连通图,选取一棵生成树(原图的极小连通子图),使生成树上所有边上权的总和为最小,称为该图的最小生成树. 求解最小生成树的算法一般有这两种:Prim算法和 ...
- linux入门 配置网络
我因为有自己的ssr,因此想让虚拟机共享我的ssr,并且不想搞的太麻烦,特此记录一下 1. 获取本机的ip 在命令行里输入ipconfig /all 获取本机IP,如下图所示,我本机ip为10.3.7 ...
- abp部署端口和域名映射配置
前引 apb部署 后端服务9900端口,域名访问地址是:http://nihao-api.hellow.com: 前端4200端口,域名访问地址是:http://nihao.hellow.com: 前 ...
- 解决php -v查看到版本于phpinfo()打印的版本不一致问题
https://blog.csdn.net/haif_city/article/details/81315372 整个事件的起因是这样的 通过git拉取laraevl项目发现缺少.env文件,打算使用 ...
- Linux lamp环境验证码无法显示
2018-12-19 php验证码无法在前端显示 原因: 缺少gd库 解决办法: CentOS / RedHat / Fedora系统 sudo yum install php-gd -y Debia ...
- Python——内部参数对外部实参的影响
无论函数传递的参数的可变还是不可变,只要针对参数使用赋值语句,会在函数内部修改局部变量的引用,不会影响到外部变量的引用,而如果传递的参数是可变类型,在函数内部使用方法修改了数据的内容,同样会影响到外部 ...
- 自学springboot
参考资料 https://www.renren.io/guide/
- Web测试注意事项
参考文章:http://www.51testing.com/html/07/n-3723307.html 总结下遇到的web测试的时候需要注意的地方: 页面分辨率: 通常是计算机的默认分辨率,但是还 ...
- clojure学习笔记(一)
下载地址 需要安装xmind打开 http://pan.baidu.com/s/1dDxKj1B