Linux 上的 ASP.NET Core故障排除概述

适用于: .NET Core 2.1、.NET Core 3.1、.NET 5

本文概述了如何对 Linux 上的 ASP.NET Core应用程序进行故障排除,以及故障排除前应考虑的事项。

先决条件

本培训系列面向以前没有 Linux 操作系统经验的受众。 目标是使对 Linux 知之甚少或完全不了解的人能够快速开始在 Linux 上安装、管理和排查 ASP.NET Core应用程序。

排查 Web 应用程序问题时可能具有的任何体验都是一个优点。 但是,没有必要。 尝试遵循本教程但缺乏故障排除经验的用户不应对此感到担忧。 在整个系列中,你将了解每个操作背后的推理。 目标是提供一种常规的动手方法,用于排查在 Linux 上运行 ASP.NET Core工作负载时可能遇到的各种问题。

main先决条件是提供 Linux 虚拟机,以便在整个训练过程中遵循建议的练习。

本系列涵盖的内容

此故障排除培训涵盖以下主题。

第 1 部分 - 连接到 Linux 计算机并管理基本任务

第 1 部分适用于以前没有 Linux 经验的用户。 它涵盖以下主题:

  • 如何在 Microsoft Azure 中创建 Linux 虚拟机。 如果已有权访问 Linux 虚拟机,则可以跳过此步骤。 培训将使用 Ubuntu x18.04 LTS 虚拟机。 如果要按照练习进行操作,建议使用相同的 Linux 发行版。
  • 如何从基于 Windows 的计算机连接到 Linux 虚拟机。

如果已有 Linux 虚拟机,则可以完全跳过此部分,并直接从第 2 部分开始。

第 2 部分 - 在 Linux 中安装和运行 ASP.NET Core应用程序

第 2 部分将学习以下内容:

  • 如何在 Linux 上安装 .NET Core,以及如何在此操作系统上运行 ASP.NET Core应用程序。
  • 如何将 ASP.NET Core应用程序配置为自动启动。
  • 如何在反向代理后面托管多个 Web 应用程序。
  • 如何将 ASP.NET Core应用程序从基于 Windows 的计算机部署到 Linux 虚拟机。

你还将练习在使用 Linux 操作系统时如何管理基本任务,例如创建和删除文件和文件夹、使用压缩的文件和文件夹、以特权用户身份运行命令以及使用包管理器安装应用程序。

如果已了解如何安装和运行 ASP.NET Core应用程序,并且想要了解有关故障排除的信息,可以从第 3 部分开始,然后继续执行故障排除实验室。

第 3 部分 - 排查 Linux 上的 ASP.NET Core应用程序问题

第 3 部分重点介绍可用于排查 Linux 上的应用程序问题的工具和命令。 我们将探讨以下方案:

  • 检查进程的 CPU 和内存使用情况。
  • 使用核心转储文件分析崩溃和性能问题。
  • 捕获和分析核心转储文件,并讨论用于执行此操作的工具。

第 4 部分 - 排查实验室问题

本系列中的故障排除实验室基于示例应用程序 BuggyAmb。 第 4 部分介绍以下技术:

  • 在 Linux 上下载并安装“BuggyAmb”示例应用程序。
  • 通过检查系统和应用程序日志并分析系统生成的核心转储文件来解决 ASP.NET Core应用程序故障。
  • 使用 .NET 开发工具收集和分析核心转储文件,以排查崩溃问题。
  • 使用 .NET 工具和 ProcDump 收集核心转储文件以排查性能问题。
  • 分析 Windows 计算机上的核心转储文件:
    • 适用于 Linux 的 Windows 子系统 (WSL2)
    • Docker 容器

第三方信息免责声明

本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 Microsoft 不对这些产品的性能或可靠性提供任何明示或暗示性担保。