跳转到主要内容

启动和停止守护进程

项目描述

GoCaptain [1] buildout配方生成一个启动和停止守护进程的脚本,类似于您在 /etc/init.d 中找到的脚本。默认情况下,它将检查您的系统,并写入一个“简单”的脚本,例如您可以自己生成的脚本,或者生成一个Linux Standard Base变体,提供更多工具。

特别是LSB脚本将尝试多次关闭您的守护进程,如果它已经运行,则不会启动它。

此包还提供了一个简单的方法从其他buildout配方生成这些脚本 - 请参阅isotoma.recipe.varnish以获取示例。

buildout配方

一个简单的例子是

[example]
recipe = isotoma.recipe.gocaptain
daemon = /usr/bin/example
name = example
description = example daemon for that thing i did that time
pidfile = /var/tmp/example.pid
args =
    -P ${example:pidfile}
    -w /var/tmp/example.log

这将生成一个在bin/example中运行的脚本,启动您的守护进程,并在稍后使用pidfile中的PID将其关闭。

选项

此配方接受的强制选项包括

daemon

守护进程可执行文件的路径

name

守护进程名称,显示在日志消息中

description

更长的描述,在启动和停止时在控制台显示

pidfile

用于存储新守护进程PID的文件路径

args

守护进程的参数。这些将按照您提供的格式在输出脚本中格式化,并在需要时提供续行符

此外,您还可以提供

template

启动/停止脚本模板的路径。这将优先于此包提供的模板使用。

从其他代码调用

如果您希望从您自己的配方中使用此功能,我建议您做如下操作

from isotoma.recipe import gocaptain
gc = gocaptain.Automatic()
f = open("/path/to/script", "w")
gc.write(f, daemon="/usr/sbin/thing",
         args="-D -P /path/to/pid",
         name="my thing", description="thing")
f.close()
os.chmod(target, 0755)

自动模块将通过检查您的系统(非常简单!)来选择Simple或LinuxStandardBase变体。

许可证

版权所有 2010 Isotoma Limited

根据Apache许可证版本2.0(“许可证”);您不得使用此文件除非遵守许可证。您可以在以下位置获得许可证副本:

https://apache.ac.cn/licenses/LICENSE-2.0

除非适用法律要求或书面同意,否则根据许可证分发的软件按“原样”分发,不提供任何明示或暗示的保证或条件。有关许可证中规定的权限和限制的具体语言,请参阅许可证。

项目详细信息


下载文件

下载您平台上的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。

源分布

isotoma.recipe.gocaptain-0.0.9.tar.gz (5.4 kB 查看哈希值)

上传时间

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面