php-在哪里可以查看Google App Engine中的日志?
作者:互联网
我是GAE的新手,因此对于GAE的专家来说,这个问题可能很容易.
我有Flexible App Engine,MySQL 2nd Gen 5.7的SQL实例
我已将我的laravel应用托管在GAE上,并按照教程进行操作:Run Laravel on Google App Engine Flexible Environment
我无法正确获取首页,出现500错误,我的应用程序URL:Its About Veg
我想像在本地机器上那样检查错误,但是我无法获取正确的日志.
我发现它可以从https://console.cloud.google.com/logs/viewer?project=project-id URL给出500响应,但是我无法获得错误的正确堆栈跟踪,这是唯一的我在这里得到的是某种JSON数据.
此外,我还想从服务器下载日志文件,以便可以手动检查日志并解决问题,但是but!我也找不到.
在这种情况下,您能帮我什么忙吗?
解决方法:
有多种方法可以从App Engine检索日志.
您可以尝试使用gcloud应用日志command来检索应用的日志.例如,要将日志输出到终端,可以运行:
$gcloud app logs read
或流式传输日志,您可以运行:
$gcloud app logs tail
也可以将日志数据从应用程序下载到本地计算机上的文件中.如果安装了App Engine SDK for PHP,则可以运行appcfg.py request_logs命令,该命令将允许您下载日志.有关如何执行此操作的说明,我建议您看一下here.
您还可以使用GCP日志记录页面执行一些细粒度的搜索(有一种导出下载这些日志的方法,我将在下面详细介绍).
登录Google Cloud Platform for App Engine的日志以及所有其他Google Cloud Platform资源都可以在Stackdriver Logging中查看.
要在控制台中导航到Stackdriver Logging,请导航至:
Logging > Logs
到达那里后,您将找到几个下拉菜单.在第一个中,您将能够选择要查看其日志的Google Cloud Platform资源.
在此下拉菜单中,选择“ GAE应用程序”.这将确保第二个下拉菜单填充有可从您的GAE应用程序中查看的各种日志的名称.例如,您可以在此菜单中指定nginx.error或syslogs来过滤特定的日志.
应用程序日志文件中的日志将流式传输到Stackdriver日志中,因此它们实质上包含与应用程序日志相同的信息,尽管采用JSON格式以确保它们可读.
同样,您可以过滤CloudSQL日志.为此,请在第一个下拉菜单中选择Cloud SQL数据库,然后指定要检查的数据库.
日志视图中的另一个下拉菜单允许您选择各种日志级别(例如“错误”,“警告”,“严重”等)和时间设置,这些设置可让您指定时间/日期以进行更精细的搜索.
您还可以选择在Stackdriver Logging搜索栏中键入搜索字符串,然后使用它们来过滤显示的日志.
如果您想下载这些日志,可以选择创建一个到Google Cloud Storage的日志接收器.从本质上讲,这使您可以编写过滤器(针对您感兴趣的日志)并将日志导出到Cloud Storage.如果需要,您可以选择从Cloud Storage下载日志.
标签:laravel-5-6,google-app-engine,google-cloud-platform,google-cloud-stackdriver,php 来源: https://codeday.me/bug/20191025/1927737.html