mirror of
https://github.com/home-assistant/core.git
synced 2025-07-24 13:47:35 +00:00
Activate fault handler (#56550)
This commit is contained in:
parent
412ecacca3
commit
c48527858d
@ -2,6 +2,7 @@
|
|||||||
from __future__ import annotations
|
from __future__ import annotations
|
||||||
|
|
||||||
import argparse
|
import argparse
|
||||||
|
import faulthandler
|
||||||
import os
|
import os
|
||||||
import platform
|
import platform
|
||||||
import subprocess
|
import subprocess
|
||||||
@ -10,6 +11,8 @@ import threading
|
|||||||
|
|
||||||
from homeassistant.const import REQUIRED_PYTHON_VER, RESTART_EXIT_CODE, __version__
|
from homeassistant.const import REQUIRED_PYTHON_VER, RESTART_EXIT_CODE, __version__
|
||||||
|
|
||||||
|
FAULT_LOG_FILENAME = "home-assistant.log.fault"
|
||||||
|
|
||||||
|
|
||||||
def validate_python() -> None:
|
def validate_python() -> None:
|
||||||
"""Validate that the right Python version is running."""
|
"""Validate that the right Python version is running."""
|
||||||
@ -309,7 +312,15 @@ def main() -> int:
|
|||||||
open_ui=args.open_ui,
|
open_ui=args.open_ui,
|
||||||
)
|
)
|
||||||
|
|
||||||
exit_code = runner.run(runtime_conf)
|
fault_file_name = os.path.join(config_dir, FAULT_LOG_FILENAME)
|
||||||
|
with open(fault_file_name, mode="a", encoding="utf8") as fault_file:
|
||||||
|
faulthandler.enable(fault_file)
|
||||||
|
exit_code = runner.run(runtime_conf)
|
||||||
|
faulthandler.disable()
|
||||||
|
|
||||||
|
if os.path.getsize(fault_file_name) == 0:
|
||||||
|
os.remove(fault_file_name)
|
||||||
|
|
||||||
if exit_code == RESTART_EXIT_CODE and not args.runner:
|
if exit_code == RESTART_EXIT_CODE and not args.runner:
|
||||||
try_to_restart()
|
try_to_restart()
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user