GAE-管理Python应用程序的常用命令

App Engine Python SDK 含有用于和 App Engine 交互的名为 appcfg.py 的命令。可使用该命令将您的应用程序的新版本代码、配置和静态文件上传到 App Engine。还可使用该命令来管理数据存储区索引以及下载日志数据。
上传应用程序

要上传应用程序文件,请使用 update 操作并输入应用程序根目录的名称来运行 appcfg.py 命令。根目录应包含应用程序的 app.yaml 文件。


appcfg.py update myapp/


appcfg.py 将从 app.yaml 文件获得应用程序 ID,并提示您输入 Google 帐户的电子邮件地址和密码。使用您的帐户成功登录后,appcfg.py 会存储一个“cookie”,这样以后登录时就无需再提示输入密码。

您可以使用 --email 选项在命令行指定电子邮件地址。您不能将密码指定为命令行选项。


appcfg.py --email=Albert.Johnson@example.com update myapp/


更新索引

当您使用 appcfg.py update 上传应用程序时,更新将包括应用程序的 index.yaml 文件。如果 index.yaml 文件定义了 App Engine 上还不存在的索引,则 App Engine 将创建此新索引。创建索引可能需要一些时间,时间长短取决于数据存储区中已存在的需要编入新索引的数据量。如果应用程序执行需要索引的查询但该索引还未构建完成,则该查询将引发异常。

要防止出现该问题,您必须确保在索引构建完成之前,要求新索引的应用程序的新版本不是应用程序的活动版本。其中一种做法是,每当您在 index.yaml 中添加或更改索引时,即在 app.yaml 中为应用程序指定一个新版本号。应用程序将以新版本上传,不会自动变成默认的版本。当您的索引已完成构建时,可使用管理控制台的“版本”部分将默认版本更改为新版本。

确保新索引在新的应用程序启用之前已构建的另一种方法是,在上传应用程序之前单独上传 index.yaml 配置。要仅上传应用程序的索引配置,请使用以下命令:

appcfg.py update_indexes myapp/


可从管理控制台的“索引”部分检查应用程序索引的状态。
删除不使用的索引

当您从 index.yaml 更改或删除索引时,不会自动从 App Engine 删除原索引。这使您可以在构建新索引时使较旧版本的应用程序保持运行,或当新版本发现问题时立即还原到较旧版本。

如果您确定旧索引不再需要,则可使用以下命令将其从 App Engine 删除:

appcfg.py vacuum_indexes myapp/


该命令将删除 index.yaml 的最近上传的版本中未提及的应用程序的所有索引。
管理计划任务

App Engine 支持计划任务(又称 cron job)。可在名为 cron.yaml 的文件中指定这些任务,然后使用 appcfg.py update_cron 命令将其上传:

appcfg.py update_cron myapp/


在文件存在的情况下,appcfg update 也将上传 cron job 说明。有关 cron job 的详细信息,请参阅 Cron Job 文档。
下载日志

App Engine 使用 Python 标准库中的 logging 模块维护您的应用程序发出的消息以及其他打印到标准错误流中的消息的日志。App Engine 还将在日志中记录每个请求。您可从管理控制台的“日志”部分浏览应用程序的日志。

如果您希望对应用程序的日志执行详细分析,可将日志数据下载到您的计算机上的文件中。要将日志下载到名为 mylogs.txt 的文件,请使用以下命令:

appcfg.py request_logs myapp/ mylogs.txt


默认情况下,该命令将下载从当前日历日(自太平洋时间午夜零点起)开始的 INFO 或更高日志级别(省略 DEBUG 级别的消息)的日志消息。该命令还将覆盖本地的日志文件。可使用命令行选项调整天数、最小日志级别以及是覆盖本地日志文件还是附加到本地日志文件。有关这些选项的详细信息,请参见下文。
上传数据

可使用 appcfg.py 通过 upload_data 操作将大量数据上传到您的应用程序的数据存储区。该操作需要在您的 Python 应用程序中设置特定的请求处理程序。有关如何使用该功能的完整操作说明,请参阅上传数据。
使用 HTTP 代理

如果您在 HTTP 代理下运行 appcfg.py,则必须告知 appcfg.py 该代理的名称。要为 appcfg.py 设置 HTTP 代理,请设置 http_proxy 环境变量。

使用 Windows(在命令提示符中):


set HTTP_PROXY=http://cache.mycompany.com:3128
appcfg.py update myapp


使用 Mac OS X(在终端中)或 Linux 中的命令行:


export http_proxy="http://cache.mycompany.com:3128"
appcfg.py update myapp


命令行参数

appcfg.py 命令包含一组选项、一个操作和该操作的参数。

有以下操作可选:


appcfg.py [options] update <app-directory>


为指定了应用程序根目录的应用程序上传文件。应用程序 ID 和版本是从应用程序目录中的 app.yaml 文件获取的。



appcfg.py [options] rollback <app-directory>


撤消指定应用程序完成的部分更新。如果更新中断并且命令报告由于锁定而无法更新应用程序,则可以使用此操作。


appcfg.py [options] update_indexes <app-directory>

更新 App Engine 中的数据存储区索引以包括新添加的索引。如果新版本的应用程序需要添加到 index.yaml 的额外索引定义,您可在上传新版本的应用程序之前在 App Engine 中更新索引配置。在上传新版本的应用程序之前几个小时运行该操作,可给予索引进行构建的时间并在部署应用程序时提供服务。



appcfg.py [options] vacuum_indexes <app-directory>


删除 App Engine 中不使用的数据存储区索引。如果从 index.yaml 中删除索引定义,则当上传应用程序时,该索引不会自动删除,因为它可能正被该应用程序的其他版本使用。当不再需要所有旧索引时执行此操作。



appcfg.py [options] request_logs <app-directory> <output-file>


检索 App Engine 上运行的应用程序的日志数据。output-file 是要创建、替换或附加(如果设置了 --append 标记)的文件的名称。如果 output-file 为连字符 (-),则日志数据将打印到控制台。以下选项适用于 request_logs:

--num_days=...

要检索的日志数据的天数(结束时间为国际协调时间当前日期的午夜)。0 值会检索所有可用日志。如果 --append 已指定,则默认为 0,否则默认为 1。


--severity=...

要检索的日志消息的最低日志级别。该值是一个与日志级别相对应的数字:4 表示“严重”,3 表示“错误”,2 表示“警告”,1 表示“信息”,0 表示“调试”。指定日志级别及更高级别的所有消息都会被检索。默认为 1(信息)。


--append

将抓取的数据附加到输出文件,开头为文件中尚未出现的第一个日志行。每天运行一次该命令,使文件中的 --append 结果包含所有日志数据。

默认为覆盖输出文件。如果 output-file 为 -(打印到控制台),则不适用。

appcfg.py [options] upload_data <app-directory>

从 CSV 文件将数据上传至数据存储区。有关使用该功能的完整信息,请参阅上传数据。


appcfg.py help <action>

打印有关指定操作的帮助消息,然后退出。

appcfg.py 命令接受以下适用于所有操作的选项:

--quiet

成功时不打印消息。


--verbose

打印有关命令正在执行的操作的消息。


--noisy

打印有关命令正在执行的操作的多个消息。在与 App Engine 团队协作解决上传问题时,此选项最为有用。


--email=...

应用程序管理员的 Google 帐户的电子邮件地址,适用于需要登录的操作。如果忽略了该值且以前使用该命令时未存储 cookie,则该命令会提示输入。


--passin

如果给定了该值,则该工具将接受 stdin 中的 Google 帐户密码而不是交互地提示输入密码。这使您无需在命令行中输入密码即可从脚本调用该工具。


--server=...

App Engine 服务器主机名。默认为 appengine.google.com。


--host=...

用于与远程过程调用配合使用的本地计算机的主机名。


--no_cookies

请勿将管理员登录凭证存储为 cookie;每次登录时都提示输入密码。


--force

强制删除不使用的索引。默认情况下,上传应用程序不会从服务器中删除不使用的索引,即使这些索引未显示在 index.yaml 文件中。


--max_size=...

要上传的文件的大小上限,以字节数表示。大于该大小的文件不会上传。默认为 1048576。服务器当前将最大文件大小强制为 1048576 字节,因此增加该值无任何效果。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
水资源是人类社会的宝贵财富,在生活、工农业生产中是不可缺少的。随着世界人口的增长及工农业生产的发展,需水量也在日益增长,水已经变得比以往任何时候都要珍贵。但是,由于人类的生产和生活,导致水体的污染,水质恶化,使有限的水资源更加紧张。长期以来,油类物质(石油类物质和动植物油)一直是水和土壤中的重要污染源。它不仅对人的身体健康带来极大危害,而且使水质恶化,严重破坏水体生态平衡。因此各国都加强了油类物质对水体和土壤的污染的治理。对于水中油含量的检测,我国处于落后阶段,与国际先进水平存在差距,所以难以满足当今技术水平的要求。为了取得具有代表性的正确数据,使分析数据具有与现代测试技术水平相应的准确性和先进性,不断提高分析成果的可比性和应用效果,检测的方法和仪器是非常重要的。只有保证了这两方面才能保证快速和准确地测量出水中油类污染物含量,以达到保护和治理水污染的目的。开展水中油污染检测方法、技术和检测设备的研究,是提高水污染检测的一条重要措施。通过本课题的研究,探索出一套适合我国国情的水质污染现场检测技术和检测设备,具有广泛的应用前景和科学研究价值。 本课题针对我国水体的油污染,探索一套检测油污染的可行方案和方法,利用非分散红外光度法技术,开发研制具有自主知识产权的适合国情的适于野外便携式的测油仪。利用此仪器,可以检测出被测水样中亚甲基、甲基物质和动植物油脂的污染物含量,为我国众多的环境检测站点监测水体的油污染状况提供依据。
### 内容概要 《计算机试卷1》是一份综合性的计算机基础和应用测试卷,涵盖了计算机硬件、软件、操作系统、网络、多媒体技术等多个领域的知识点。试卷包括单选题和操作应用两大类,单选题部分测试学生对计算机基础知识的掌握,操作应用部分则评估学生对计算机应用软件的实际操作能力。 ### 适用人群 本试卷适用于: - 计算机专业或信息技术相关专业的学生,用于课程学习或考试复习。 - 准备计算机等级考试或职业资格认证的人士,作为实战演练材料。 - 对计算机操作有兴趣的自学者,用于提升个人计算机应用技能。 - 计算机基础教育工作者,作为教学资源或出题参考。 ### 使用场景及目标 1. **学习评估**:作为学校或教育机构对学生计算机基础知识和应用技能的评估工具。 2. **自学测试**:供个人自学者检验自己对计算机知识的掌握程度和操作熟练度。 3. **职业发展**:帮助职场人士通过实际操作练习,提升计算机应用能力,增强工作竞争力。 4. **教学资源**:教师可以用于课堂教学,作为教学内容的补充或学生的课后练习。 5. **竞赛准备**:适合准备计算机相关竞赛的学生,作为强化训练和技能检测的材料。 试卷的目标是通过系统性的题目设计,帮助学生全面复习和巩固计算机基础知识,同时通过实际操作题目,提高学生解决实际问题的能力。通过本试卷的学习与练习,学生将能够更加深入地理解计算机的工作原理,掌握常用软件的使用方法,为未来的学术或职业生涯打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值