diff --git a/visualdl/server/args.py b/visualdl/server/args.py index cf43fc30e59d467b262bca2fe094ac8c437047a5..124dd20bb38ef710534f8cd3aa49159efc0993fb 100644 --- a/visualdl/server/args.py +++ b/visualdl/server/args.py @@ -14,11 +14,12 @@ # ======================================================================= import sys +import socket from argparse import ArgumentParser from visualdl.server.log import logger -default_host = '127.0.0.1' +default_host = None default_port = 8040 default_cache_timeout = 20 @@ -50,6 +51,16 @@ def validate_args(args): sys.exit(-1) +def get_host(host=None, port=default_port): + if not host: + host = socket.getfqdn() + try: + socket.create_connection((host, port), timeout=1) + except socket.error: + host = 'localhost' + return host + + def format_args(args): validate_args(args) @@ -63,6 +74,9 @@ def format_args(args): if args.api_only: args.open_browser = False + if not args.host: + args.host = get_host(args.host, args.port) + return args