genvid.toolbox.ConsulTool¶
-
class
genvid.toolbox.
ConsulTool
(use_wan=False, **kwargs)¶ ベースクラス:
genvid.toolbox.network.NetworkTool
この class で、さまざまな Consul サービスにアクセスできます。
-
NAME
= 'consul'¶
-
DESCRIPTION
= 'An interface to the consul discovery service.'¶
-
CONSUL_KEY_SEP
= '/'¶ Consul KVS フォルダのセパレータ
-
UI_NAMES
= ('consul-ui',)¶ UI サービス名のリスト
-
connect_consul
(ip=None)¶ 特定の Consul ノードへの接続を返します。
-
consulate
¶ consulate パッケージから接続された Consul クライアント。
-
consul_kv
¶ Consul KVS。
-
consul_catalog
¶ Consul カタログ。
-
consul_health
¶ Consul ヘルス API。
バージョン 1.15.0 で追加.
-
consul_agent
¶ Consul エージェント API。
-
consul_join
(ip)¶ Consul クラスタに参加。
-
get_consul_ip
()¶ デフォルトの Consul サービスの IP を返す。
-
get_consul_address
()¶ デフォルトの Consul サービスのアドレスを返す。
-
get_service
(name, timeout=0.0, tag: typing.Union[str, NoneType] = None, passing: bool = True)¶ サービス name のステータスを返す。
パラメータ: - timeout – 数秒間、または適切なサービスが見つかるまでサービスが再試行する。
- tag – 空白でない場合、このタグのサービスのみを戻す。
- passing – True の場合 (デフォルト)、パスするサービスのみを戻す。
サービスが利用できない場合、
ServiceIsNotRunningError
が発生します。バージョン 1.15.0 で変更: カタログではなく、/v1/health/service を使用して健全なサービスのみを返す。引数を False に設定すると、以前の動作を取得する。
-
static
get_service_address_port
(svc: dict, use_wan: bool = False)¶ サービスのアドレスとポートを返す。
パラメータ: - svc –
get_service()
で返されるサービス説明の辞書。 - use_wan – 存在する場合は、WAN TaggedAdressed を使用。
バージョン 1.19.0 で追加.
- svc –
-
start_service_ui
(ui, use_wan=False)¶ ui というサービスで、Web ブラウザを開く。サービスに use_wan を使用する場合に指定。
-
start_consul_ui
()¶ Consul UI で Web ブラウザを開く。
-
start_ui
(*uis)¶ uis で指定したサービスで Web ページを開く。
-
add_consul_commands
()¶ Consul コマンドをパーサーに追加する。
add_commands()
から実行し、イベントコマンドをパーサーに追加する。
-
run_consul_command
(command, options)¶ コマンドが Consul コマンドかどうかを検出し、実行する。
run_command()
から呼び出し、Consul コマンドを処理する。add_consul_commands()
により、Consul コマンドが追加される。戻り値:
- handled, result: コマンドを処理したかどうかを示す、ブール値のトプル。
- 処理した場合は結果を返す。
-
-
class
consul.
ConsulTool
¶