帮助手册

在 Azure App Services (Linux) 中安装 .NET 代理

通过集成 Site24x7 APM Insight .NET 代理,监控托管在 Linux 上的 Azure App Service 中的 .NET 应用程序。

您可以使用以下任一方法安装代理:

  1. 使用自定义部署脚本
  2. 使用 NuGet 包和应用程序设置

使用自定义部署脚本

使用自定义启动脚本安装 .NET 代理,该脚本在应用程序启动时自动完成安装和配置。

步骤 1:创建部署脚本

  1. 导航至 /home 目录。
  2. 在该路径下创建一个名为 apm-dotnetagent-deploy.sh 的新 Shell 脚本。
  3. 将以下内容添加到脚本中:
    #!/bin/bash
    set -e

    LICENSE_KEY="YOUR_LICENSE_KEY"
    SITE24X7_APP_NAME="YOUR_APPLICATION_NAME"
    AGENT_HOME="/home/apminsight/dotnet"
    AGENT_DIR="$AGENT_HOME/ApmInsightDotNetCoreAgent"

    echo "Setting environment variables..."

    export SITE24X7_APP_NAME="$SITE24X7_APP_NAME"
    export S247_LICENSE_KEY="$LICENSE_KEY"
    export CORECLR_ENABLE_PROFILING=1
    export CORECLR_PROFILER="{9D363A5F-ED5F-4AAC-B456-75AFFA6AA0C8}"
    export CORECLR_SITE24X7_HOME="$AGENT_DIR"
    export CORECLR_PROFILER_PATH_64="$AGENT_DIR/x64/libClrProfilerAgent.so"
    export CORECLR_PROFILER_PATH_32="$AGENT_DIR/x86/libClrProfilerAgent.so"
    export DOTNET_STARTUP_HOOKS="$AGENT_DIR/netstandard2.0/DotNetAgent.Loader.dll"
    export MANAGEENGINE_COMMUNICATION_MODE="ExporterService"

    if [ -d "$AGENT_DIR" ]; then
        echo "APM Insight agent directory already exists. Skipping installation..."
    else
        echo "Agent directory not found. Proceeding with installation..."

        echo "Updating packages and installing unzip..."
        apt-get update
        apt-get install -y unzip vim-common

        wget https://staticdownloads.site24x7.com/apminsight/agents/dotnet/apminsight-dotnetcoreagent-linux.sh
        chmod +x apminsight-dotnetcoreagent-linux.sh

        # Patch xxd usage
        sed -i 's/xxd -p/od -An -tx1 | tr -d " \\n"/g' apminsight-dotnetcoreagent-linux.sh

        echo "Installing .NET Core Agent..."
        printf "A\n" | ./apminsight-dotnetcoreagent-linux.sh \
            -Destination "$AGENT_HOME" \
            -LicenseKey "$LICENSE_KEY"

        rm -f apminsight-dotnetcoreagent-linux.sh

        wget -O InstallDataExporter.sh \
        https://staticdownloads.site24x7.com/apminsight/S247DataExporter/linux/InstallDataExporter.sh

        chmod +x InstallDataExporter.sh
        sh InstallDataExporter.sh
        rm -f InstallDataExporter.sh
    fi

    # YOUR APPLICATION STARTUP COMMAND GOES HERE
注意
  • YOUR_LICENSE_KEY 替换为您的 Site24x7 许可证密钥。
  • YOUR_APPLICATION_NAME 替换为您在 Site24x7 中的应用程序名称。

步骤 2:修改启动命令

  1. 打开 Azure 门户
  2. 导航至您的 Web 应用
  3. 转至设置 > 配置
  4. 常规设置选项卡下,找到启动命令字段。
  5. 输入以下命令:
    yes | bash /home/apm-dotnetagent-deploy.sh
  1. 单击保存

步骤 3:重启 Web 应用

更新启动命令后:

  1. Azure 门户中,导航至您的 Web 应用
  2. 单击重启
下一步

转至您的 Site24x7 APM Insight 仪表板,检查应用程序是否已显示。

使用 NuGet 包和应用程序设置

通过添加 NuGet 包并在 Azure App Service 中配置所需的环境变量来安装 .NET 代理。

  1. 使用您偏好的方式(例如 Visual Studio NuGet 管理器或 CLI)将 NuGet 包 Site24x7.APMInsight.Agent 添加到您的 .NET 项目。
  2. 构建应用程序并将其发布到 Azure App Service (Linux)。
  3. 在 Azure 门户中,导航至您的 App Service
  4. 转至设置 > 配置 > 应用程序设置
  5. 单击 + 添加,并添加以下环境变量:
    CORECLR_ENABLE_PROFILING=1
    CORECLR_PROFILER={9D363A5F-ED5F-4AAC-B456-75AFFA6AA0C8}
    CORECLR_PROFILER_PATH_32=/home/site/wwwroot/site24x7/x86/libClrProfilerAgent.so
    CORECLR_PROFILER_PATH_64=/home/site/wwwroot/site24x7/x64/libClrProfilerAgent.so
    DOTNET_STARTUP_HOOKS=/home/site/wwwroot/site24x7/netstandard2.0/DotNetAgent.Loader.dll
    DOTNETCOREAGENT_HOME="/home/site/wwwroot/site24x7"
    MANAGEENGINE_COMMUNICATION_MODE=direct
    S247_LICENSE_KEY=YOUR_LICENSE_KEY_HERE
    SITE24X7_APP_NAME=<monitor name>
    注意

    YOUR_LICENSE_KEY_HERE 替换为从 Site24x7 门户复制的实际许可证密钥。

  1. 单击保存以应用更改。
  2. 重启 App Service 以使新配置的环境变量生效。
  3. 应用重启后,执行若干事务以产生流量。
注意

请确保所有环境变量均按列表中的格式准确设置。路径不正确或变量缺失可能导致代理无法正常运行。

相关文章

在 Azure App Services Windows 上安装 .NET 代理

本文档对您有帮助吗?

您愿意帮助我们改进文档吗?请告诉我们哪些方面可以做得更好。


很抱歉本文档未能让您满意。我们希望了解可以从哪些方面改进您的体验。


感谢您抽出时间分享反馈。我们将利用您的反馈来改进在线帮助资源。

短链接已复制!