问题描述

参考“快速入门:在 Linux 上的 Azure 应用服务中创建 Python 应用” 文档,在App Service For Linux环境中部署Python应用,在添加了pandas,应用本地运行成功,但是部署到App Service后,启动报错:Application Error

问题分析

获取日志:

可以通过高级工具(kudu)连接到App Service后台,因为是Linux系统,所以通过SSH或者Bash都可以查看网站的部署文件及日志(LogFiles文件夹)。针对在启动时候就出现错误,另一种有效的方式是查看日志流:

分析日志:

2021-04-14T10:03:54 Welcome, you are now connected to log-streaming service.
Starting Log Tail -n 10 of existing logs ----
...

...

/home/LogFiles/2021_04_14_pl0sdlwk000004_default_docker.log (https://.../2021_04_14_pl0sdlwk000004_default_docker.log)
2021-04-14T07:14:56.088553959Z File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
2021-04-14T07:14:56.088558258Z File "<frozen importlib._bootstrap_external>", line 728, in exec_module
2021-04-14T07:14:56.088562457Z File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
2021-04-14T07:14:56.088566657Z File "/home/site/wwwroot/app.py", line 3, in <module>
2021-04-14T07:14:56.088571256Z import pandas
2021-04-14T07:14:56.088575055Z ModuleNotFoundError: No module named 'pandas'
2021-04-14T07:14:56.090356881Z [2021-04-14 07:14:56 +0000] [38] [INFO] Worker exiting (pid: 38)
2021-04-14T07:14:56.135086101Z [2021-04-14 07:14:56 +0000] [35] [INFO] Shutting down: Master
2021-04-14T07:14:56.135978364Z [2021-04-14 07:14:56 +0000] [35] [INFO] Reason: Worker failed to boot.

/home/LogFiles/2021_04_14_pl0sdlwk000004_docker.log (https://.../LogFiles/2021_04_14_pl0sdlwk000004_docker.log)
2021-04-14T07:08:42.143Z INFO - Stopping site test65 because it failed during startup.
2021-04-14T07:14:47.690Z INFO - Starting container for site

其中的原因就是因为没有成功加载pandas模块,所以应用启动失败。而在Linux的环境中,是因为在部署时候,缺少了antenv.tar.gz文件包。

问题解决

在部署时,成功导入antenv.tar.gz文件,项目运行成功

参考资料

快速入门:在 Linux 上的 Azure 应用服务中创建 Python 应用 : https://docs.azure.cn/zh-cn/app-service/quickstart-python?tabs=bash&pivots=python-framework-flask

Local git 部署https://docs.microsoft.com/zh-cn/azure/app-service/deploy-local-git?tabs=cli

【Azure 应用服务】Python3.7项目在引用pandas 模块后,部署报错 的更多相关文章

  1. 为 VUE 项目添加 PWA 解决发布后刷新报错问题

    为什么要给 VUE 项目添加 PWA 为什么要添加?因为不管是部署在 IIS,还是 nginx,每次应用部署后,再次访问因为旧的 js 已经不存在,所以页面访问的时候会整个报错,报错的结果就是一个白屏 ...

  2. vue踩坑记-在项目中安装依赖模块npm install报错

    在维护别人的项目的时候,在项目文件夹中安装npm install模块的时候,报错如下: npm ERR! path D:\ShopApp\node_modules\fsevents\node_modu ...

  3. unity3d MonoDevelop引用外部自定义dll文件报错:are you missing an assembly reference?

    在unity3d 编辑器 MonoDevelop 中引用外部自定义dll文件报错:are you missing an assembly reference? 因为unity还停留在.NET Fram ...

  4. laravel 项目表单中有csrf_token,但一直报错419错误 解决redis连接错误:MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persi

    laravel 项目表单中有csrf_token,但一直报错419错误,因为项目中使用到Redis缓存,在强制关闭Redis后出现的问题,查询laravel.log文件查找相关问题 安装redis后在 ...

  5. Eclipse中导入项目后js报错解决方法(转未解决问题)

    本文转自:http://blog.csdn.net/chenchunlin526/article/details/54666882 Eclipse中导入项目后js报错的原因与解决方法 在我们将项目导入 ...

  6. php项目代码 编码格式不对会大范围报错

    php项目代码 编码格式不对会大范围报错

  7. 关于导入本地maven项目pom.xml出现missing artifact org....报错处理

    一.导入本地maven项目步骤:

  8. 如何解决spring boot 项目导入依赖后代码报错问题

    如何解决spring boot 项目导入依赖后代码报错问题 2020-08-15  14:17:18 代码截图如图所示(由于本人问题已经解决,没来得及截图,所以在网上找了一张图片)

  9. 【Azure App Service】C#下制作的网站,所有网页本地测试运行无误,发布至Azure之后,包含CHART(图表)的网页打开报错,错误消息为 Runtime Error: Server Error in '/' Application

    问题描述 C#下制作的网站,所有网页本地测试运行无误,发布至Azure之后,包含CHART(图表)的网页打开报错,错误消息为 Runtime Error: Server Error in '/' Ap ...

  10. vue 项目项目启动时由于EsLint代码校验报错

    今天在编写好vue项目代码时,在命令行输入npm start的时候出现了如下图所示的一大堆错误: 在网上查找资料说是缺少EsLint配置文件的问题,最终找到一篇由 hahazexia 编写的一篇博客文 ...

随机推荐

  1. interface{}类型 + fmt.Sprintf() 导致栈逃逸

    作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 对部分代码进行了栈逃逸检查: go build -gcfl ...

  2. 【K哥爬虫普法】百度、360八年恩怨情仇,robots 协议之战终落幕

    我国目前并未出台专门针对网络爬虫技术的法律规范,但在司法实践中,相关判决已屡见不鲜,K哥特设了"K哥爬虫普法"专栏,本栏目通过对真实案例的分析,旨在提高广大爬虫工程师的法律意识,知 ...

  3. 时不我待,拥抱趋势,开源IM项目OpenIM技术简介

    坚持开源 开源的理念是基于共享.合作和透明的原则,将软件.代码等知识资源公开并允许他人使用.修改和重新分发,以促进创新和发展.以下是几个开源的优点: 创新:开源可以促进创新,通过让其他人改进或扩展已有 ...

  4. C/C++ BeaEngine 反汇编引擎

    反汇编引擎有很多,这个引擎没有Dll,是纯静态链接库,适合r3-r0环境,你可以将其编译为DLL文件,驱动强制注入到游戏进程中,让其快速反汇编,读取出反汇编代码并保存为txt文本,本地分析. 地址:h ...

  5. Java并发(十)----线程之守护线程

    默认情况下,Java 进程需要等待所有线程都运行结束,才会结束.有一种特殊的线程叫做守护线程,只要其它非守护线程运行结束了,即使守护线程的代码没有执行完,也会强制结束. 例: log.debug(&q ...

  6. delphi TThread.WaitFor 用法

    在 Delphi 中,TThread.WaitFor 方法用于等待一个线程完成执行.当你创建一个线程并希望主线程(或其他线程)等待这个线程结束时,你可以使用这个方法. 以下是 TThread.Wait ...

  7. MySQL-CDC原理与实践

    MySQL CDC (Change Data Capture),中文名为MySQL变化数据捕获,是一种截取MySQL主从复制流中binlog的技术,从而实时捕获数据库中的增.删.改操作.在大数据.实时 ...

  8. [JVM] Java内存分配

    Java内存分配 程序计数器 程序计数器是一块较小的内存区域,作用可以看做是当前线程执行的字节码的位置指示器.分支.循环.跳转.异常处理和线程恢复等基础功能都需要依赖这个计算器来完成. 虚拟机栈 虚拟 ...

  9. Eclipse安装配置、卸载教程(Windows版)

    Eclipse是一个开放源代码的集成开发环境(IDE),最初由IBM公司开发,现在由Eclipse基金会负责维护.它是一个跨平台的工具,可以用于开发多种编程语言,如Java.C/C++.Python. ...

  10. 100 行代码实现用户登录注册与 RESTful 接口 - 手把手教程附 Python 源码

    在开发大多数应用时,用户系统都是必不可少的部分,而我们总是需要开发围绕用户的登录,注册,获取,更新等接口.在这篇文章将带你用一百多行代码简洁地实现一套这样的用户鉴权与 RESTful 接口,并使用 S ...