supervisord 相关问题

Supervisor是一个客户端/服务器系统,允许其用户在类UNIX操作系统上控制许多进程。

通过brew在macOs上安装Supervisor但/etc中没有配置文件?

有没有人在 macOS 上安装了 Supervisor 并问我这个问题。目前我为 macOS 安装 Supervisor: 酿造安装主管 根据说明我去了 /etc/ -> 没有直接...

回答 2 投票 0

如何在supervisor中为受监督进程添加延迟 - linux

我添加了一个使用python的cassandra库的bottle服务器,但它退出时出现以下错误:Bottle FATAL退出太快(进程日志可能有详细信息)日志显示:文件“/usr/local...

回答 3 投票 0

Keyringrc.cfg 使用诗歌通过 python 脚本安装软件包时出现权限问题

我有一个由主管管理的应用程序,以用户 app_user 身份运行。当脚本启动时,它会检查是否有新的软件包并尝试使用下面的代码安装它们。然而它会抛出...

回答 1 投票 0

Docker Alpine Supervisor unix:///run/supervisord.sock 没有这样的文件

我使用 docker、docker-compose 来创建图像,并使用我的应用程序和主管基于 alpine 3.10 创建图像(通过文档 3.3.5)。但是当我进入容器并启动supervisorctl之后我...

回答 2 投票 0

Python3 venv 未通过主管正确激活

我正在使用supervisor 4.1.0来运行Python脚本。 Python 脚本需要激活 venv 才能正常运行,并且不需要使用主管。 当从主管运行 python 脚本时,我

回答 1 投票 0

PHPfpm 和 Nginx 无法在 Docker 中与 Supervisord 一起工作

我正在 docker 容器内运行 2 个进程,一个 Nginx 服务器和带有supervisord 的 PHP-FPM,但它只是继续以状态 1 退出(意外) 这是日志 2016-12-09 21:37:35,529 暴击

回答 2 投票 0

生产服务器中的 Laravel 计划作业调度两次

在 Laravel 7 中,我在生产服务器(Ubuntu)中使用 Supervisor 来自动运行一些作业。 在本地环境中一切正常。但在我的生产服务器中,每个作业都会排队两次。 这是我的

回答 1 投票 0

共享托管上的主管替代方案

我已将我的应用程序部署在共享主机“Hostgator”上,我已成功通过 ssh 访问,但是我无法安装管理程序来管理队列处理,命令 sudo apt-get install Supervisor 总是 ret...

回答 2 投票 0

Supervisor 进程不断重启

我使用 Shopware 6 并且想要禁用管理员工作人员。相反,Supervisor 应该用于队列和任务处理,因为主机不支持 systemd。 Shopware 6 的文档提到...

回答 1 投票 0

脚本尝试调用不完整对象的方法。生产中出现错误,但本地主机上没有错误

我正在开发一个 laravel 10 项目,我有几个类来处理电子邮件。 最近我添加了一些新的电子邮件通知。 我将通知代码分解为服务: 我正在开发一个 laravel 10 项目,我有几个类来处理电子邮件。 最近我添加了一些新的电子邮件通知。 我将通知代码分解为服务: <?php namespace App\Services; use App\Models\User; use App\Models\Comment; use App\Models\Request; use App\Mail\CommentMail; use App\Mail\InvitationMail; use App\Mail\NewRequestMail; use App\Mail\AffectationMail; use App\Mail\FinishedRequestMail; use App\Mail\ApplicantAffectationMail; use App\Megaphone\NewComment; use App\Megaphone\NewRequest; use App\Megaphone\NewInvitation; use App\Megaphone\NewAffectation; use App\Megaphone\FinishedRequest; use App\Megaphone\ApplicantAffectation; use Illuminate\Support\Facades\Mail; class NotificationService { /** * Sending notifications for new request. * * @param User $user * @param Request $request * @param bool $manager * @return void */ public function sendNewRequestNotification(User $user, Request $request, $manager = false) : void { $notification = new NewRequest( 'Nouvelle demande', $request->user->name . ' a créé une nouvelle demande : "' . $request->title . '".', route('show', ['id' => $request->id]), ); $this->sendMegaphoneNotification($user, $notification); // Manager case => verify the right preference between isManagerEmailEnabled() and isMailEnabled(). if($manager) { if($user->isManagerEmailEnabled()) { $this->sendEmailNotification($user, $request, $notification); } } else { if($user->isMailEnabled()) { $this->sendEmailNotification($user, $request, $notification); } } } /** * Sending notifications for new comment. * * @param User $user * @param Request $request * @param Comment $comment * @return void */ public function sendCommentNotification(User $user, Request $request, Comment $comment) : void { $notification = new NewComment( 'Nouveau commentaire', $comment->user->name . ' a laissé un nouveau commentaire à la demande "' . $request->title .'."', route('show', ['id' => $request->id]), ); $this->sendMegaphoneNotification($user, $notification); if($user->isMailEnabled()) { $this->sendEmailNotification($user, $request, $notification, $comment); } } /** * Sending notifications for new affectation. * * @param User $user * @param Request $request * @return void */ public function sendAffectationNotification(User $user, Request $request) : void { $notification = new NewAffectation( 'Nouvelle affectation', 'Vous avez reçu une nouvelle affectation pour la demande : "' . $request->title . '".', route('show', ['id' => $request->id]), ); $this->sendMegaphoneNotification($user, $notification); if($user->isMailEnabled()) { $this->sendEmailNotification($user, $request, $notification); } } /** * Sending notifications for new invitation. * * @param User $user * @param Request $request * @param string $senderName * @return void */ public function sendInvitationNotification(User $user, Request $request, $senderName) : void { $notification = new NewInvitation( 'Nouvelle invitation', $senderName . ' vous a envoyé une invitation à suivre la demande : "' . $request->title . '".', route('show', ['id' => $request->id]), ); $this->sendMegaphoneNotification($user, $notification); if($user->isMailEnabled()) { $this->sendEmailNotification($user, $request, $notification, null, $senderName); } } /** * Sending notifications for finished request. * * @param User $user * @param Request $request * @return void */ public function sendFinishedRequestNotification(User $user, Request $request) : void { $notification = new FinishedRequest( 'Demande terminée', 'La demande : "' . $request->title . '" est terminée.', route('show', ['id' => $request->id]), ); $this->sendMegaphoneNotification($user, $notification); if($user->isMailEnabled()) { $this->sendEmailNotification($user, $request, $notification); } } /** * Sending notifications for applicant affectation. * * @param User $user * @param Request $request * @param mixed $senderName * @return void */ public function sendApplicantAffectationNotification(User $user, Request $request, $senderName) : void { $notification = new ApplicantAffectation( 'Demande créée en votre nom', $senderName . ' a créé la demande ' . $request->title . ' en votre nom.', route('show', ['id' => $request->id]), ); $this->sendMegaphoneNotification($user, $notification); if($user->isMailEnabled()) { $this->sendEmailNotification($user, $request, $notification, null, $senderName); } } /** * Sending a Megaphone application notification. * * @param User $user * @param mixed $notification * @return void */ public function sendMegaphoneNotification(User $user, $notification) : void { $user->notify($notification); } /** * Sending an email notification. * * @param User $user * @param Request $request * @param mixed $notification * @param Comment $comment * @param string $senderName * @return void */ public function sendEmailNotification(User $user, Request $request, $notification, $comment = null, $senderName = null) : void { $notifUuid = $user->notifications()->latest()->first()->id; $toEmail = $user->isInfoManager() ? config('mail.info_notification_email') : $user->email; if($notification instanceof NewRequest) { Mail::to($toEmail)->queue(new NewRequestMail($request, $notifUuid)); } elseif ($notification instanceof NewComment) { Mail::to($toEmail)->queue(new CommentMail($request, $comment, $notifUuid)); } elseif ($notification instanceof NewAffectation) { Mail::to($toEmail)->queue(new AffectationMail($request, $notifUuid)); } elseif ($notification instanceof NewInvitation) { Mail::to($toEmail)->queue(new InvitationMail($request, $senderName, $notifUuid)); } elseif ($notification instanceof FinishedRequest) { Mail::to($toEmail)->queue(new FinishedRequestMail($request, $notifUuid)); } elseif ($notification instanceof ApplicantAffectation) { Mail::to($toEmail)->queue(new ApplicantAffectationMail($request, $senderName, $notifUuid)); } } } 它允许我在控制器或 Livewire 组件上像这样使用它: public function __construct() { $this->notificationService = new NotificationService(); } [...] $this->notificationService->sendFinishedRequestNotification($this->req->user, $this->req); [...] 它在本地主机上运行良好(php artisanserve)。 但是当我将它部署在本地服务器(也称为生产)上时,它会抛出此错误: The script tried to call a method on an incomplete object. Please ensure that the class definition "App\Mail\FinishedRequestMail" of the object you are trying to operate on was loaded _before_ unserialize() gets called or provide an autoloader to load the class definition 扩音器通知工作正常,但电子邮件通知不行。 所以看来在: /** * Sending notifications for finished request. * * @param User $user * @param Request $request * @return void */ public function sendFinishedRequestNotification(User $user, Request $request) : void { $notification = new FinishedRequest( 'Demande terminée', 'La demande : "' . $request->title . '" est terminée.', route('show', ['id' => $request->id]), ); $this->sendMegaphoneNotification($user, $notification); if($user->isMailEnabled()) { $this->sendEmailNotification($user, $request, $notification); } } $this->sendMegaphoneNotification($user, $notification);有效但无效$this->sendEmailNotification($user, $request, $notification); 在我的生产服务器上,我使用主管来处理电子邮件队列。 我无法在本地主机上重现该错误。 有人有想法吗? 我怀疑这与急切加载处理配置有关。 检查您的日志文件,了解有关急切加载“警告”(在本地)/“错误”(在生产中)的信息。 本地和生产之间的默认值有所不同——选项范围从悄悄地允许隐含的急切加载到抛出警告和错误。 我见过用户在 App\Providers\AppServiceProvider 中配置急切加载处理

回答 1 投票 0

xmlrpc.py 权限被拒绝整个运行主管

我需要在后台运行 laravel 作业,因此,我需要在 Linux 服务器上运行主管。每当我尝试这个时 Supervisorctl 重读 它返回此错误。 错误: 我需要在后台运行 laravel 作业,因此,我需要在 Linux 服务器上运行主管。每当我尝试这样做时 supervisorctl reread 它返回此错误。 错误:,[Errno 13]权限被拒绝:文件:/usr/lib/python3/dist-packages/supervisor/xmlrpc.py行:560 我尝试更改此文件的权限 chmod u+X /usr/lib/python3/dist-packages/supervisor/xmlrpc.py 它返回此错误 chmod:更改“/usr/lib/python3/dist-packages/supervisor/xmlrpc.py”的权限:不允许操作 有什么原因导致它不起作用?我最近将 PHP 升级到 8.1。这就是导致问题的原因吗? 我曾经遇到过和你一样的问题,我在命令开头使用了sudo,效果很好 sudo supervisorctl reread 修复“/etc/supervisord.conf”中“[unix_http_server]”部分定义的权限(例如“chown”参数,然后重新启动supervisord服务。 sudo systemctl restart supervisord

回答 2 投票 0

Gunicorn 服务在 docker 的监督下停止

我使用supervisor、nginx和gunicorn来通过Docker部署Django项目。 我正在运行 docker-compose up 来构建项目和 nginx 映像。 经历过其他类似问题,建议...

回答 1 投票 0

pythonsupervisord程序依赖

我的supervisord.conf中有[程序:A],[程序:B] B 依赖 A,意味着: A应该在B之前开始。 主管如何确保这一点?

回答 5 投票 0

在 Cloud Run 上使用 Docker 部署 Laravel 会在包含 Supervisord 时返回 Container failed to start 错误

我正在尝试使用 Docker 将一个带有 apache 的 Laravel 项目部署到 Cloud Run,一切正常,我成功地将我的项目部署到 Cloud Run,没有任何问题,但是当我添加主管时...

回答 1 投票 0

supervisor.sock 拒绝连接 docker 容器

supervisor.sock 拒绝连接 docker 容器 我尝试通过supervisorctl unix:///var/run/supervisor.sock拒绝连接来修复它并且Overlayfs不适用于unix域socke...

回答 3 投票 0

Ubuntu 无法重启supervisor [已关闭]

我尝试过: sudo 服务主管重新启动 我有: Supervisor.service 的作业失败,因为控制进程退出并出现错误代码。请参阅“systemctl status Supervisor.service”和“journalctl...

回答 2 投票 0

supervisor错误日志:sudo:需要终端来读取密码

我正在尝试使用supervisord来守护vapor服务器。这是我第一次这样做。我在主管错误日志中收到这一也是唯一的错误: sudo:需要终端来读取

回答 1 投票 0

主管错误:“program:TextAlertServer”部分中不存在名为 /not/real/path/ 路径一部分的目录

这是我第一次使用Supervisor。在我的supervisord.conf文件中,我有一个与错误匹配的stdout_logfile路径,所以我不明白为什么它会给我这个错误: 错误:目录 n...

回答 1 投票 0

如何为多个进程重用主管进程的环境定义

我定义了多个主管程序,并且它们都定义了相同的环境变量,现在我需要添加一个新的,并且必须将其添加到每个程序部分。有没有办法去...

回答 1 投票 0

Docker、Supervisord 和日志记录 - 如何将日志合并到 docker 日志中?

因此,通过 uWSGI 尝试使用 Docker + Supervisord + Django 应用程序。我的整个堆栈工作正常,但需要整理日志记录。 如果我以非守护进程模式启动主管, /usr/bin/超级...

回答 8 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.