69 lines
2.1 KiB
Python
69 lines
2.1 KiB
Python
import os
|
|
import sys
|
|
import subprocess
|
|
import webbrowser
|
|
import time
|
|
import argparse
|
|
|
|
def run_tensorboard():
|
|
"""Run TensorBoard server and open browser"""
|
|
parser = argparse.ArgumentParser(description='TensorBoard Launcher')
|
|
parser.add_argument('--port', type=int, default=6006, help='Port for TensorBoard server')
|
|
parser.add_argument('--logdir', type=str, default='runs', help='Log directory for TensorBoard')
|
|
parser.add_argument('--no-browser', action='store_true', help='Do not open browser automatically')
|
|
args = parser.parse_args()
|
|
|
|
# Create log directory if it doesn't exist
|
|
os.makedirs(args.logdir, exist_ok=True)
|
|
|
|
# Print banner
|
|
print("\n" + "="*60)
|
|
print("📊 TRADING BOT - TENSORBOARD MONITORING 📊")
|
|
print("="*60)
|
|
print(f"Starting TensorBoard server on port {args.port}")
|
|
print(f"Log directory: {args.logdir}")
|
|
print("Press Ctrl+C to stop the server")
|
|
print("="*60 + "\n")
|
|
|
|
# Start TensorBoard server
|
|
cmd = ["tensorboard", "--logdir", args.logdir, "--port", str(args.port)]
|
|
|
|
try:
|
|
# Start TensorBoard process
|
|
process = subprocess.Popen(
|
|
cmd,
|
|
stdout=subprocess.PIPE,
|
|
stderr=subprocess.STDOUT,
|
|
universal_newlines=True
|
|
)
|
|
|
|
# Wait for TensorBoard to start
|
|
time.sleep(3)
|
|
|
|
# Open browser
|
|
if not args.no_browser:
|
|
url = f"http://localhost:{args.port}"
|
|
print(f"Opening browser to {url}")
|
|
webbrowser.open(url)
|
|
|
|
# Print TensorBoard output
|
|
while True:
|
|
output = process.stdout.readline()
|
|
if output == '' and process.poll() is not None:
|
|
break
|
|
if output:
|
|
print(output.strip())
|
|
|
|
return process.poll()
|
|
|
|
except KeyboardInterrupt:
|
|
print("\nStopping TensorBoard server...")
|
|
process.terminate()
|
|
return 0
|
|
except Exception as e:
|
|
print(f"Error running TensorBoard: {str(e)}")
|
|
return 1
|
|
|
|
if __name__ == "__main__":
|
|
exit_code = run_tensorboard()
|
|
sys.exit(exit_code) |