# coding: utf-8# OceanBase Deploy.# Copyright (C) 2021 OceanBase## This file is part of OceanBase Deploy.## OceanBase Deploy is free software: you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation, either version 3 of the License, or# (at your option) any later version.## OceanBase Deploy is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the# GNU General Public License for more details.## You should have received a copy of the GNU General Public License# along with OceanBase Deploy. If not, see <https://www.gnu.org/licenses/>.from__future__importabsolute_import,division,print_functionimportosdefstatus(plugin_context,*args,**kwargs):cluster_config=plugin_context.cluster_configclients=plugin_context.clientscluster_status={}forserverincluster_config.servers:server_config=cluster_config.get_server_conf(server)client=clients[server]cluster_status[server]=0remote_pid_path=os.path.join(server_config['home_path'],'run/prometheus.pid')remote_pid=client.execute_command('cat {}'.format(remote_pid_path)).stdout.strip()ifremote_pidandclient.execute_command('ls /proc/{}'.format(remote_pid)):cluster_status[server]=1returnplugin_context.return_true(cluster_status=cluster_status)