私はcrossbar.ioを使ってチャットをします。私たちはチャットのいくつかのノードを持っています。 各ノードについての統計を書き込む必要があるため、特定のノードが実行されているホスト名を取得する必要があります。Crossbar.ioホスト名を取得するには?
コンポーネントインスタンスからホスト名を取得できますか?
私はcrossbar/autobahnとpython 3.4の最新バージョンを使用しています。
ローカル環境を使用している場合は、127.0.0.1が必要です。
私はcrossbar.ioを使ってチャットをします。私たちはチャットのいくつかのノードを持っています。 各ノードについての統計を書き込む必要があるため、特定のノードが実行されているホスト名を取得する必要があります。Crossbar.ioホスト名を取得するには?
コンポーネントインスタンスからホスト名を取得できますか?
私はcrossbar/autobahnとpython 3.4の最新バージョンを使用しています。
ローカル環境を使用している場合は、127.0.0.1が必要です。
ただ、ソケットライブラリを使用します。あなたのマシンの場合は
import socket
hostname = socket.gethostname()
を解決可能なホスト名がでてみました:アップデート
import socket socket.gethostbyname(socket.getfqdn())
。これは、より完全なソリューションである、すべてのOSで正常に動作する必要があります:
import socket
print [l for l in ([ip for ip in socket.gethostbyname_ex( socket.gethostname())[2] if not ip.startswith('127.')][:1], [[(s.connect(('8.8.8.8', 53)), s.getsockname()[0], s.close() ) for s in [socket.socket(socket.AF_INET, socket.SOCK_DGRAM)]][0][1]]) if l][0][0]
同じ結果が127.0.0.1の代わりに172.17.0.1を取得しました –
それは、このために動作しません、あなたは「間違ったホスト名」とはどういう意味ですか間違ったホスト名 –
@AleksandrYarushevskyを得ましたか。 – user312016
私はlocalhostを実行し、127.0.0.1の代わりに172.17.0.1を取得しました –