StarlingX Fault Management
Go to file
Takamasa Takenaka 8bd6e5b92d Validate fm manager socket fd before send a message
When fm manager is restarted, there is no mechanism to detect it
from fm api client side. As a result, when subcloud delete clear
alarm request is sent after fm manager is restarted, fm api client
will show broke pipe and clear alarm request is not received and
this alarm stays.

This fix is to check socket fd state before send/receive from
fm api client. If broken pipe is detected, it will try to
reconnect to fm manager.

Closes-bug: 2039684

Test Plan:
PASS: Restart fm manager and confirm that detect broken pipe
      and reconnect messages in /var/log. For example,
-----
sm: err fmSocket.cpp(270): A broken pipe error occurred
sm: warning fmAPI.cpp(116): Invalid file descriptor. Atte
mpting to reconnect...
sm: info fmAPI.cpp(149): Connected to FM Manager.
-----
PASS: Delete offline subcloud and confirm the alarm is
      removed.

Change-Id: Ibc0f4d96b5c0a385d8fedbc1acd23898f1cbea46
Signed-off-by: Takamasa Takenaka <takamasa.takenaka@windriver.com>
2023-10-19 15:18:17 -03:00
api-ref/source Removing system uuid from alarms summary 2021-08-12 19:55:39 -04:00
devstack Implement access control for FM API 2022-08-26 10:54:39 -03:00
doc Add alarm id, definition for system peer and subcloud peer group 2023-10-13 15:56:12 +08:00
fm-api Add alarm id, definition for system peer and subcloud peer group 2023-10-13 15:56:12 +08:00
fm-common Validate fm manager socket fd before send a message 2023-10-19 15:18:17 -03:00
fm-doc Add alarm id, definition for system peer and subcloud peer group 2023-10-13 15:56:12 +08:00
fm-mgr Update debian package versions to use git commits 2023-02-09 18:06:57 +00:00
fm-rest-api Define kernel mismatch alarms: 100.120, 100.121 2023-06-30 08:02:41 -04:00
python-fmclient Support newer version of yaml 2023-05-31 16:36:27 +00:00
releasenotes Switch to newer openstackdocstheme and reno versions 2020-06-04 14:20:25 +02:00
.gitignore Create test framework for python with stestr. 2020-01-16 16:45:45 +08:00
.gitreview OpenDev Migration Patch 2019-04-19 19:52:34 +00:00
.zuul.yaml Fix github mirroring for this repo 2023-04-28 12:38:51 -04:00
CONTRIBUTORS.wrs StarlingX open source release updates 2018-05-31 07:36:00 -07:00
LICENSE StarlingX open source release updates 2018-05-31 07:36:00 -07:00
README.rst starlingx/fault README improvement 2023-07-19 10:48:29 -03:00
bindep.txt py3: Add support for python 3.9 2021-09-01 08:58:34 -04:00
centos_build_layer.cfg Build layering, add layer build config file 2019-10-15 19:41:08 +08:00
centos_iso_image.inc Remove snmp-ext and snmp-audittrail from FM 2021-01-04 14:57:33 -03:00
centos_pkg_dirs Remove snmp-ext and snmp-audittrail from FM 2021-01-04 14:57:33 -03:00
centos_stable_docker_images.inc Create the stable wheel and image build files 2019-03-24 21:08:19 -04:00
centos_stable_wheels.inc Create the stable wheel and image build files 2019-03-24 21:08:19 -04:00
debian_build_layer.cfg Add debian_build_layer.cfg file 2021-10-28 15:26:08 -04:00
debian_iso_image.inc Debian: fault: update debian_iso_image.inc 2022-11-18 08:15:57 +08:00
debian_pkg_dirs Update debian-pkg-dirs with fm-doc library 2022-02-04 02:02:56 +00:00
debian_stable_docker_images.inc Add stx-fm-rest-api loci image 2022-10-27 15:29:06 +00:00
debian_stable_wheels.inc Add stx-fm-rest-api loci image 2022-10-27 15:29:06 +00:00
pylint.rc Support newer version of yaml 2023-05-31 16:36:27 +00:00
requirements.txt Adding pylint zuul and tox target 2020-03-11 09:05:18 -05:00
test-requirements.txt Tox and Zuul cleanup for python3.9 2023-03-02 19:32:25 +00:00
tox.ini Tox and Zuul cleanup for python3.9 2023-03-02 19:32:25 +00:00

README.rst

Fault Management (FM)

The starlingx/fault repository handles Fault Management (FM) services1, and provides the fm command-line interface (CLI)2.

This repository is not intended to be developed standalone, but rather as part of the StarlingX Source System, which is defined by the StarlingX manifest3.

References


  1. https://docs.starlingx.io/api-ref/fault↩︎

  2. https://docs.starlingx.io/cli_ref/fm.html↩︎

  3. https://opendev.org/starlingx/manifest.git↩︎