API¶
Main Class¶
App¶
App manages the creation of all objects and QObjects for the whole application:
- Creation of
AppProgressBar
until the Data Manager is ready - Creation of
AppQMainWindow
- Creation of standard python objects (settings, css, localization)
-
class
alignak_app.app.
AlignakApp
¶ Bases:
PyQt5.QtCore.QObject
Class who build Alignak-app QObjects, initialize configurations, systray icon and Thread Manager.
-
static
check_threads
()¶ Launch periodically threads
-
static
quit_launched_threads
()¶ Exit the threads that were started when the application started
Parameters: launched_threads (list) – list of threads that have been launched Returns: empty list if all the threads have been left or current list Return type: list
-
static
show_login_window
()¶ Show LoginQDialog window for user to login to backend
-
start
(username=None, password=None)¶ Start Alignak-app
-
static
-
class
alignak_app.app.
AppProgressBar
¶ Bases:
PyQt5.QtWidgets.QProgressBar
AppProgressBar in busy mode with text displayed at the center.
Backend¶
The Backend package contains classes to manage alignak data
Backend¶
Backend manage connection and access to Alignak backend. It also fill
DataManager
.
-
class
alignak_app.backend.backend.
BackendClient
¶ Bases:
object
Class who collect informations with Backend-Client and returns data for Alignak-App.
-
get
(endpoint, params=None, projection=None, all_items=False)¶ GET on alignak Backend REST API.
Parameters: Returns: desired request of app_backend
Return type:
-
get_backend_status_icon
()¶ Return backend status icon name
Returns: daemon status icon name Return type: str
-
login
(username=None, password=None, proxies=None, check=False)¶ Connect to alignak backend
Parameters: Returns: True if connected or False if not
Return type:
-
patch
(endpoint, data, headers)¶ PATCH on alignak Backend REST API
Parameters: Returns: dictionary containing patch response from the backend
Return type:
-
post
(endpoint, data, headers=None)¶ POST on alignak Backend REST API
Parameters: Returns: response (creation information)
Return type:
-
query_daemons_data
()¶ Launch request for “alignakdaemon” endpoint
-
query_history_data
(hostname=None, host_id=None)¶ Launch request for “history” endpoint but only for hosts in “data_manager”
Parameters:
-
query_hosts_data
()¶ Launch request for “host” endpoint
-
query_livesynthesis_data
()¶ Launch request for “livesynthesis” endpoint
-
query_notifications_data
()¶ Launch request for “history” endpoint but only for notifications of current user
-
query_period_data
()¶ Launch a request on
timeperiod
endpoint
-
query_realms_data
()¶ Launch a request on
realm
endpoint
-
query_services_data
()¶ Launch request for “service” endpoint
-
query_user_data
()¶ Launch request for “user” endpoint
-
Data Manager¶
DataManager manage alignak data provided by
Client
.
-
class
alignak_app.backend.datamanager.
DataManager
¶ Bases:
object
Class who store alignak data
-
get_all_hostnames
()¶ Collect and return all names of all hosts
Returns: all names of all hosts Return type: list
-
get_host_services
(host_id)¶ Return services corresponding to host ID
Parameters: host_id (str) – ‘_id’ of host Returns: services corresponding to host ID Return type: list
-
get_host_with_services
(host_field)¶ Returns the desired host and all its services
Parameters: host_field (str) – field of wanted host: host_id | name Returns: dict with host data and its associated services Return type: dict
-
get_item
(item_type, key, value=None)¶ Return the wanted item for item type who contain the value
Parameters: Returns: wanted item
Return type: alignak_app.items.item.*
-
get_items_and_problems
()¶ Return total of items and problems
Returns: dict of problem and total number for each item Return type: dict
-
get_period_name
(period)¶ Return the period name or alias
Parameters: period (str) – wanted period _id
Returns: the wanted realm alias or name if available Return type: str
-
get_problems
()¶ Return items who are in problem: hosts and services
Returns: dict of items in problem, and number for each type of item Return type: dict
-
get_realm_name
(realm)¶ Return the realm name or alias
Parameters: realm (str) – wanted realm _id
Returns: the wanted realm alias or name if available Return type: str
-
get_synthesis_count
()¶ Get on “synthesis” endpoint and return the states of hosts and services
Returns: states of hosts and services. Return type: dict
-
is_ready
()¶ Check if DataManager is filled and ready
Returns: if ready or current status Return type: str
-
Items¶
The Items package contains classes who create items who are stored in
DataManager
.
Item¶
Item is parent class for all items objects:
-
class
alignak_app.items.item.
Item
¶ Bases:
object
Class who create an item
-
create
(_id, data, name=None)¶ Create wanted item
Parameters:
-
static
get_check_text
()¶ Return text for check type :param check_type: type of check (
active_checks_enabled
orpassive_checks_enabled
) :type check_type: str :return: the corresponding text :rtype: str
-
-
alignak_app.items.item.
get_host_msg_and_event_type
(host_and_services)¶ Return corresponding event icon to number of services who are in alert
Parameters: host_and_services (dict) – Host() item and its Service() items Returns: event type and message Return type: dict
-
alignak_app.items.item.
get_icon_name
(item_type, state, acknowledge, downtime, monitored)¶ Return icon for a host or a service item
Parameters: Returns: icon name for icon
Return type:
-
alignak_app.items.item.
get_icon_name_from_state
(item_type, state)¶ Return icon name from state for host or service
Parameters: Returns:
Daemon¶
Daemon manage creation of daemon item for backend alignakdaemon
endpoint
-
class
alignak_app.items.daemon.
Daemon
¶ Bases:
alignak_app.items.item.Item
Class who create a daemon item
-
create
(_id, data, name=None)¶ Create wanted item
Parameters:
-
static
get_check_text
()¶ Return text for check type :param check_type: type of check (
active_checks_enabled
orpassive_checks_enabled
) :type check_type: str :return: the corresponding text :rtype: str
-
static
get_daemons_names
()¶ Returns all the names of daemons
Returns: all the names of daemons Return type: list
-
static
get_daemons_status_icon
()¶ Return daemons status icon name
Returns: daemons status icon name Return type: str
-
static
get_request_model
()¶ Return the request model for alignakdaemon requests
Returns: request model for alignakdaemon endpoint Return type: dict
-
static
get_states
()¶ Return states of daemons or backend
Parameters: status (str) – status of item Returns: the status string Return type: str
-
Event¶
Event manage creation of event item (Notifications collected from history
endpoint)
-
class
alignak_app.items.event.
Event
¶ Bases:
alignak_app.items.item.Item
Class who create an event item
-
create
(_id, data, name=None)¶ Create wanted item
Parameters:
-
static
get_check_text
()¶ Return text for check type :param check_type: type of check (
active_checks_enabled
orpassive_checks_enabled
) :type check_type: str :return: the corresponding text :rtype: str
-
static
get_request_model
()¶ Return the request model for notification requests
Returns: request model for history endpoint (only for notifications) Return type: dict
-
History¶
History manage creation of history item for backend history
endpoint
-
class
alignak_app.items.history.
History
¶ Bases:
alignak_app.items.item.Item
Class who create a history item
-
create
(_id, data, name=None)¶ Create wanted item
Parameters:
-
static
get_check_text
()¶ Return text for check type :param check_type: type of check (
active_checks_enabled
orpassive_checks_enabled
) :type check_type: str :return: the corresponding text :rtype: str
-
static
get_history_icon_name
(event_type)¶ Return icon name related to message or event type
Parameters: Returns: icon name
Return type:
-
static
get_request_model
()¶ Return the request model for history requests
Returns: request model for history endpoint Return type: dict
-
Host¶
Host manage creation of host item for backend host
endpoint
-
class
alignak_app.items.host.
Host
¶ Bases:
alignak_app.items.item.Item
Class who create a host item
-
create
(_id, data, name=None)¶ Create wanted item
Parameters:
-
static
get_available_icons
()¶ Return list of available icons for a Host item
Returns: list of available icons for Host Return type: list
-
static
get_check_text
()¶ Return text for check type :param check_type: type of check (
active_checks_enabled
orpassive_checks_enabled
) :type check_type: str :return: the corresponding text :rtype: str
-
static
get_request_model
()¶ Return the request model for host requests
Returns: request model for host endpoint Return type: dict
-
Live Synthesis¶
Live Synthesis manage creation of livesynthesis item for backend livesynthesis
endpoint
-
class
alignak_app.items.livesynthesis.
LiveSynthesis
¶ Bases:
alignak_app.items.item.Item
Class who create livesynthesis item
-
create
(_id, data, name=None)¶ Create wanted item
Parameters:
-
static
get_check_text
()¶ Return text for check type :param check_type: type of check (
active_checks_enabled
orpassive_checks_enabled
) :type check_type: str :return: the corresponding text :rtype: str
-
static
get_request_model
()¶ Return the request model for livesynthesis requests
Returns: request model for livesynthesis endpoint Return type: dict
-
static
get_synthesis_count_model
()¶ Return the synthesis count model
Returns: synthesis count model Return type: dict
-
Period¶
Period manage creation of period item for backend timeperiod
endpoint
-
class
alignak_app.items.period.
Period
¶ Bases:
alignak_app.items.item.Item
Class who create a period item
-
create
(_id, data, name=None)¶ Create wanted item
Parameters:
-
static
get_check_text
()¶ Return text for check type :param check_type: type of check (
active_checks_enabled
orpassive_checks_enabled
) :type check_type: str :return: the corresponding text :rtype: str
-
static
get_request_model
()¶ Return the request model for timeperiod requests
Returns: request model for timeperiod endpoint Return type: dict
-
Realm¶
Realm manage creation of realm item for backend realm
endpoint
-
class
alignak_app.items.realm.
Realm
¶ Bases:
alignak_app.items.item.Item
Class who create a realm item
-
create
(_id, data, name=None)¶ Create wanted item
Parameters:
-
static
get_check_text
()¶ Return text for check type :param check_type: type of check (
active_checks_enabled
orpassive_checks_enabled
) :type check_type: str :return: the corresponding text :rtype: str
-
static
get_request_model
()¶ Return the request model for realm requests
Returns: request model for realm endpoint Return type: dict
-
Service¶
Service manage creation of service item for backend service
endpoint
-
class
alignak_app.items.service.
Service
¶ Bases:
alignak_app.items.item.Item
Class who create a service item
-
create
(_id, data, name=None)¶ Create wanted item
Parameters:
-
static
get_available_icons
()¶ Return list of available icons for a Service item
Returns: list of available icons for Service Return type: list
-
static
get_check_text
()¶ Return text for check type :param check_type: type of check (
active_checks_enabled
orpassive_checks_enabled
) :type check_type: str :return: the corresponding text :rtype: str
-
static
get_request_model
()¶ Return the request model for service requests
Returns: request model for service endpoint Return type: dict
-
static
get_service_states_nb
()¶ Return all service state in a dict with int() as zero
Returns: all service state with int() as zero Return type: dict
-
User¶
User manage creation of user item
-
class
alignak_app.items.user.
User
¶ Bases:
alignak_app.items.item.Item
Class who create user item for backend
user
endpoint-
create
(_id, data, name=None)¶ Create wanted item
Parameters:
-
static
get_check_text
()¶ Return text for check type :param check_type: type of check (
active_checks_enabled
orpassive_checks_enabled
) :type check_type: str :return: the corresponding text :rtype: str
-
static
get_request_model
()¶ Return the request model for user requests
Parameters: token (str) – token of user Returns: request model for user endpoint Return type: dict
-
Utils¶
The Utils package contains classes and functions configurations
Settings¶
Settings manage configurations of Alignak-app
settings.cfg
: contains configurations of Alignak-app (stored inALIGNAKAPP_USR_DIR
)images.ini
: contains all images names (stored inALIGNAKAPP_APP_DIR
)style.css
: contains css of Alignak-app (stored inALIGNAKAPP_APP_DIR
)
-
class
alignak_app.utils.config.
Settings
¶ Bases:
object
Class who read and create configuration for Alignak-app
-
edit_setting_value
(section, option, new_value)¶ Set an option in configuration file
Parameters:
-
get_config
(section, option, boolean=False)¶ Return global application configuration values
Parameters: Returns: configuration value
Return type: str | bool
-
get_image
(name)¶ Return the path of wanted image
Parameters: name (str) – name of image Returns: full path of image Return type: str
-
init_config
()¶ Initialize configurations
-
init_css
()¶ Init the css file and fill app_css
-
Installer¶
Installer check and manage installation of Alignak-app
- Check
ALIGNAKAPP_APP_DIR
,ALIGNAKAPP_USR_DIR
andALIGNAKAPP_LOG_DIR
folders - Check required files for application and user
- Install configuration and daemon files for user
-
class
alignak_app.utils.installer.
Installer
¶ Bases:
object
Class who create and check: folders, files and environment variables for Alignak-App
-
check_environment
(mode='start')¶ Assign fields to environment variables if they don’t exist
-
check_install_folders
()¶ Check Alignak-app folders
Returns: if all folders are present Return type: bool
-
check_installation
(mode='start')¶ Check Alignak-app installation
-
check_user_installation
()¶ Check user installation files
-
init_environment
()¶ Assign environment variables to fields if they exists
-
install
()¶ Install Alignak-app user files on system
-
System¶
System manage interactions with folders and files for Alignak-app
-
alignak_app.utils.system.
file_executable
(filename)¶ Make filename executable
Parameters: filename (str) – file to make executable
-
alignak_app.utils.system.
install_file
(origin_dir, dest_dir, filename)¶ Install (copy) filename from an origin folder to a destination folder
Parameters:
-
alignak_app.utils.system.
mkdir
(folder)¶ Make wanted folder
Parameters: folder (str) – folder to create Returns: if creation is success or not Return type: bool
-
alignak_app.utils.system.
read_config_file
(cfg_parser, filename)¶ Read configuration file and assign it to configParser object
Parameters: - cfg_parser (configparser.ConfigParser) – configparser object
- filename (str) – name of file to read
Returns: corresponding filename if read is success
Return type:
-
alignak_app.utils.system.
write_file
(origin_dir, dest_dir, filename, formatted_var=None)¶ Write a file from an origiin to a destination, with formatted variables if needed
Parameters:
Logs¶
Logs manage application logs directory and file who are created inside ALIGNAKAPP_LOG_DIR
.
-
alignak_app.utils.logs.
create_logger
()¶ Create the logger for Alignak-App
Returns: the RootLogger of App Return type: logging.RootLogger
Time¶
Time manage time and date for Alignak-app
-
alignak_app.utils.time.
get_current_time
()¶ Return current formatted time
Returns: current time Return type: str
-
alignak_app.utils.time.
get_local_datetime
(_date)¶ Return the local time from a datetime
Parameters: _date (datetime.datetime) – datetime to set to local time Returns: local date time Return type: datetime.datetime
-
alignak_app.utils.time.
get_local_datetime_from_date
(_date)¶ Return the local timestamp from date
Parameters: _date (str) – date to convert to datetime Returns: corresponding local datetime of date Return type: datetime.datetime
Locales¶
The Locales package contains classes to manage translation.
QObjects¶
The QObjects package contains PyQt5 classes of Alignak-app
App Main¶
App Main manage creation of QMainWindow for:
-
class
alignak_app.qobjects.app_main.
AppQMainWindow
(parent=None)¶ Bases:
PyQt5.QtWidgets.QMainWindow
Class who create QMainWindow of Alignak-app
-
initialize
()¶ Initialize QMainWindow for App
-
mouseMoveEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
mousePressEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
Dock¶
Dock manage creation of QWidget for Dock (Right part)
Panel¶
Panel manage creation of QWidget for Panel (Left part)
-
class
alignak_app.qobjects.panel.
PanelQWidget
(parent=None)¶ Bases:
PyQt5.QtWidgets.QWidget
Class who manage Panel with Host and Services QWidgets
-
create_line_search
(hostnames_list=None)¶ Add all hosts to QLineEdit and set QCompleter
Parameters: hostnames_list (list) – list of host names
-
define_hostname
()¶ Define hostname to display, depends of sender object
Returns: the hostname to display Return type: str
-
display_host
()¶ Display and update HostQWidget
-
dragEnterEvent
(event)¶ Override dragEnterEvent.
Parameters: event – event triggered when something enter
-
dragMoveEvent
(event)¶ - Override dragMoveEvent.
- Only accept EventItem() objects who are “spied_on” and not already spied
Parameters: event – event triggered when something move
-
dropEvent
(event)¶ - Override dropEvent.
- Get dropped item data, create a new one, and delete the one who is in EventsQWidget
Parameters: event – event triggered when something is dropped
-
get_search_widget
()¶ Create and return the search QWidget
Returns: search QWidget Return type: QWidget
-
get_synthesis_widget
()¶ Return synthesis QWidget()
Returns: synthesis QWidget() Return type: QWidget
-
initialize
()¶ Create the QWidget with its items and layout.
-
spy_host
()¶ Spy host who is available in line_search QLineEdit
-
update_panel_spytab
()¶ Update text of the psy panel tab
-
Alignak¶
The Alignak package contains QObjects to display global alignak data, including
alignakdaemon
and livesynthesis
endpoints
Alignak¶
Alignak manage creation of QWidgets for general Alignak data, like:
- Daemons status: status of each daemons (
see
StatusQDialog
class) - Backend connection: status of backend connection (
see
TrayIcon
class) - User: data of current user (see
User
package)
-
class
alignak_app.qobjects.alignak.alignak.
AlignakQWidget
¶ Bases:
PyQt5.QtWidgets.QWidget
Class who display daemons status, backend connection and user informations
-
initialize
()¶ Initialize QWidget
-
open_user_widget
()¶ Show ProfileQWidget
-
show_status_dialog
()¶ Update and show StatusQDialog
-
update_status
()¶ Update daemons and backend status
-
Dashboard¶
Dashboard manage the creation of QWidgets to display number of:
- Each states of Hosts items
- Each states of Services items
-
class
alignak_app.qobjects.alignak.dashboard.
DashboardQWidget
(parent=None)¶ Bases:
PyQt5.QtWidgets.QWidget
Class who manage Host and Services resume QWidgets with number of:
- Hosts:
UP
,UNREACHABLE
,DOWN
- Services:
OK
,WARNING
,CRITICAL
,UNKNWON
,UNREACHABLE
- Hosts and services:
NOT_MONITORED
,ACKNOWLEDGED
,DOWNTIMED
-
get_host_resume_widget
()¶ Return Host resume QWidget
-
get_services_resume_widget
()¶ Return Services resume QWidget
-
initialize
()¶ Initialize QWidget
-
open_item_type_url
(item_type)¶ Retrieve sender to send right endpoint to open_url() function for item type
Parameters: item_type (str) – type of item: hosts | services
-
update_dashboard
()¶ Update number of items in dashboard
- Hosts:
Livestate¶
Livestate manage creation fo QWidget to resume number of:
- Number of hosts monitored and in problem
- Number of services monitored and in problem
- Number of item monitored and in problems
-
class
alignak_app.qobjects.alignak.livestate.
LivestateQWidget
¶ Bases:
PyQt5.QtWidgets.QWidget
Class who display items livestate: hosts, services and number of problems
-
get_item_type_widget
(item_type, problem_nb, total_nb)¶ Create and return QWidget with backend data
Parameters: Returns: widget with its data
Return type: QWidget
-
initialize
()¶ Initialize QWidget
-
paintEvent
(_)¶ Override paintEvent to paint background
-
update_labels
()¶ Update QLabels of QWidget
-
Problems¶
Problems manage creation of QWidgets to display problems found in Alignak backend:
-
class
alignak_app.qobjects.alignak.problems.
ProblemsQWidget
(parent=None)¶ Bases:
PyQt5.QtWidgets.QWidget
Class who create Problems QWidget
-
add_spied_host
()¶ Add a host to spied hosts
-
get_btn_widget
()¶ Return QWidget with spy and host synthesis QPushButtons
Returns: widget with spy and host button Return type: QWidget
-
get_curent_user_role_item
()¶ Return current selected item by
Qt.UserRole
Returns: current selected item or None Return type: alignak_app.items.item.Item
-
get_search_widget
()¶ Create and return the search QWidget
Returns: search QWidget Return type: QWidget
-
initialize
(spy_widget)¶ Initialize QWidget and set SpyQWidget
Parameters: spy_widget (alignak_app.qobjects.events.spy.SpyQWidget) – instance of SpyQWidget to manage spy events
Update status of action buttons and set current item for ActionsQWidget
-
Problems Table¶
Problems Table manage creation of QTableView to display problems found in Alignak backend:
- Hosts:
DOWN
,UNREACHABLE
- Services:
WARNING
,CRITICAL
,UNKNOWN
-
class
alignak_app.qobjects.alignak.problems_table.
ProblemsQTableView
(parent=None)¶ Bases:
PyQt5.QtWidgets.QTableView
Class who create Problems QTableView to display each problem
-
static
get_item_text
()¶ Return item text depends if it’s a host or service
Parameters: item (alignak_app.items.host.Host | alignak_app.items.service.Service) – host or service item Returns: text of item Return type: str
-
static
get_output_tableitem
()¶ Return centered QTableWidgetItem with output
Parameters: item (alignak_app.items.host.Host | alignak_app.items.service.Service) – host or service item Returns: table item with text Return type: QStandardItem
-
get_tableitem
(item)¶ Return centered QTableWidgetItem with problem
Parameters: item (alignak_app.items.host.Host | alignak_app.items.service.Service) – host or service item Returns: table item with text Return type: QStandardItem
-
static
Status¶
Status manage creation of QDialog for daemons status
-
class
alignak_app.qobjects.alignak.status.
StatusQDialog
(parent=None)¶ Bases:
PyQt5.QtWidgets.QDialog
Class who create QWidget for Daemons status.
-
add_daemon_labels
(daemon_item, line)¶ Add daemon QLabels to layout
Parameters: - daemon_item (alignak_app.items.item_daemon.Daemon) – daemon item
- line (int) – current line of layout
-
add_daemon_titles_labels
(line)¶ Add QLabels titles for daemons to layout
Parameters: line (int) – current line of layout
-
initialize
()¶ Initialize QDialog
-
set_daemons_labels
(daemons)¶ Initialize the daemon QLabels for each daemons
Parameters: daemons (list) – list of daemon items
-
update_dialog
()¶ Update StatusQDialog labels
-
Common¶
The Common package contains common QObjects for Alignak-app, used by several other QWidgets
Actions¶
Actions manage global QDialog’s for actions : Acknowledge and Downtime
-
class
alignak_app.qobjects.common.actions.
AckQDialog
(parent=None)¶ Bases:
PyQt5.QtWidgets.QDialog
Class who create Acknowledge QDialog for hosts/services
-
initialize
(item_type, item_name, comment)¶ Initialize Acknowledge QDialog
Parameters:
-
mouseMoveEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
mousePressEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
-
class
alignak_app.qobjects.common.actions.
ActionsQWidget
(parent=None)¶ Bases:
PyQt5.QtWidgets.QWidget
Class who create Actions QWidget
-
add_acknowledge
()¶ Create AckQDialog and manage acknowledge
-
add_downtime
()¶ Create DownQDialog and manage downtime
-
initialize
(item)¶ Initialize Actions QWidget, with ack and downtime buttons
-
update_widget
()¶ Update QWidget
-
-
class
alignak_app.qobjects.common.actions.
DownQDialog
(parent=None)¶ Bases:
PyQt5.QtWidgets.QDialog
Class who create Downtime QDialog for hosts/services
-
duration_to_seconds
()¶ Return “duration” QTimeEdit value in seconds
Returns: “duration” in seconds Return type: int
-
handle_accept
()¶ Check if end_time timestamp is not lower than start_time
-
initialize
(item_type, item_name, comment)¶ Initialize Downtime QDialog
Parameters:
-
mouseMoveEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
mousePressEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
Buttons¶
Buttons manage global QPushButtons
Dialogs¶
Dialogs manage global QDialogs
-
class
alignak_app.qobjects.common.dialogs.
EditQDialog
(parent=None)¶ Bases:
PyQt5.QtWidgets.QDialog
Class who create Edit QDialog to edit text in Alignak-app
-
accept_text
()¶ Set Edit QDialog to Rejected or Accepted (prevent to patch for nothing)
-
get_text_widget
()¶ Return text QWidget with QTextEdit
Returns: text QWidget Return type: QWidget
-
-
class
alignak_app.qobjects.common.dialogs.
MessageQDialog
(parent=None)¶ Bases:
PyQt5.QtWidgets.QDialog
Class who create a Message QDialog to display texts in Alignak-app
-
get_message_widget
(dialog, title, text)¶ Return colored message QWidget
Parameters: Returns: message QWidget
Return type: QWidget
-
-
class
alignak_app.qobjects.common.dialogs.
ValidatorQDialog
(parent=None)¶ Bases:
PyQt5.QtWidgets.QDialog
Class who create Validator QDialog to edit text in Alignak-app with regexp to validate
-
accept_text
()¶ Set Edit QDialog to Rejected or Accepted (prevent to patch for nothing)
-
check_text
()¶ Valid email with
QRegExpValidator
and inform user
-
get_text_widget
(regexp)¶ Return text QWidget with QTextEdit
Returns: text QWidget Return type: QWidget
-
Frames¶
Frames manage global QFrames for Alignak-app
-
class
alignak_app.qobjects.common.frames.
AppQFrame
(parent=None)¶ Bases:
PyQt5.QtWidgets.QFrame
Class who create a QFrame container for App QWidgets
-
add_widget
(widget)¶ Add the child QWidget of AppQWidget
Parameters: widget (QWidget) – QWidget to add
-
close_widget
()¶ Close QFrame and child widget
-
get_title_widget
(title)¶ Return the title QWidget for App windows
Parameters: title (str) – title of frame Returns: a title QWidget Return type: QWidget
-
minimize
()¶ Minimize QFrame
-
minimize_maximize
()¶ Minimize / Maximize QFrame
-
mouseMoveEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
mousePressEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
show_widget
()¶ Show and center QFrame and child widget
-
Labels¶
Labels manage global QLabels and QPixmaps
-
alignak_app.qobjects.common.labels.
get_icon_item
(item_type, problem_nb)¶ Return QPixmap with the corresponding image
Parameters: Returns: QPixmap with corresponding image
Return type: QPixmap
Widgets¶
Widgets manage global QWidgets
-
class
alignak_app.qobjects.common.widgets.
LogoQWidget
¶ Bases:
PyQt5.QtWidgets.QWidget
Class who manage creation of Logo QWidget
-
initialize
(child_widget, title, exitapp)¶ Initialize QWidget
Parameters:
-
minimize
()¶ Minimize QWidget
-
minimize_maximize
()¶ Minimize / Maximize QWidget
-
paintEvent
(_)¶ Override to apply “background-color” property of QWidget
-
-
alignak_app.qobjects.common.widgets.
center_widget
(widget)¶ Center QWidget
Parameters: widget (QWidget) – widget to center
-
alignak_app.qobjects.common.widgets.
get_logo_widget
(child_widget, title, exitapp=False)¶ Return LogoQWidget with alignak logo
Parameters: Returns: Logo QWidget with buttons and child QWidget
Return type: QWidget
Events¶
The Events package contains QObjects to view events collected by the application, like notifications in history, hosts spied, actions performed by the user
Events¶
Events manage creation of QWidget for events
-
class
alignak_app.qobjects.events.events.
EventsQWidget
¶ Bases:
PyQt5.QtWidgets.QWidget
Class who create QWidget for events
-
add_event
(event_type, msg, timer=False, spied_on=False, host=None)¶ Add event to events list
Parameters:
-
event_exist
(msg)¶ Check if event already displayed, move it to top and update tooltip. Only for EventItem who are spied on.
Parameters: msg (str) – message of event Returns: if message exist or not in events QWidgetList Return type: bool
-
initialize
()¶ Intialize QWidget
-
remove_event
(item=None)¶ Remove item when user double click on an item
Parameters: item (EventItem) – item to remove, else remove the current row
-
remove_timer_event
(event)¶ Remove EventItem with timer
Parameters: event (EventItem) – EventItem with timer
-
send_datamanager_events
()¶ Add events stored in DataManager
-
-
alignak_app.qobjects.events.events.
get_events_widget
()¶ Return EventsQWidget instance
Returns: EventsQWidget instance Return type: alignak_app.qobjects.events.events.EventsQWidget
-
alignak_app.qobjects.events.events.
init_event_widget
()¶ Initialize the global EventsQWidget. Used for drag & drop and send events
-
alignak_app.qobjects.events.events.
send_event
(event_type, msg, timer=False, spied_on=False, host=None)¶ Add event to Events QWidget (access function to make event sendable in whole application. Event type define icon and color of
EventItem
.- green: [
OK
,UP
] - blue: [
UNKNOWN
,INFO
,SPY
] - orange: [
WARNING
,UNREACHABLE
,WARN
] - red’: [
DOWN
,CRITICAL
,ALERT
] - yellow: [
ACK
] - yellow: [
DOWNTIME
]
Parameters: - green: [
Event Item¶
Event item manage creation of QListWidgetItem
for events
-
class
alignak_app.qobjects.events.item.
EventItem
¶ Bases:
PyQt5.QtWidgets.QListWidgetItem
Class who create an event QListWidgetItem
-
close_item
()¶ Hide items when timer is finished
-
static
get_icon
()¶ Return name of icon event
Parameters: event_type (str) – type of event Returns: name of icon Return type: str
-
initialize
(event_type, msg, timer=False, spied_on=False, host=None)¶ Initialize QListWidgetItem
Parameters:
-
Spy¶
Spy manage creation of QWidget for host items who are spied
-
class
alignak_app.qobjects.events.spy.
SpyQListWidget
¶ Bases:
PyQt5.QtWidgets.QListWidget
Class who create QListWidget for spied hosts
-
add_spy_host
(host_id)¶ Add a host to spied list and create corresponding EventItem()
Parameters: host_id (str) – “_id” of host to spy
-
dragMoveEvent
(event)¶ - Override dragMoveEvent.
- Only accept EventItem() objects who are “spied_on” and not already spied
Parameters: event – event triggered when something move
-
dropEvent
(event)¶ - Override dropEvent.
- Get dropped item data, create a new one, and delete the one who is in EventsQWidget
Parameters: event – event triggered when something is dropped
-
-
class
alignak_app.qobjects.events.spy.
SpyQWidget
¶ Bases:
PyQt5.QtWidgets.QWidget
Class who create QWidget for spied hosts
-
initialize
()¶ Intialize Spy QWidget
-
remove_event
()¶ Remove item when user double click on an item, update parent tab text
-
send_spy_events
()¶ Send event for one host spied
-
update_parent_spytab
()¶ Update the parent spy tab text
-
Host¶
The Host package contains QObjects to display data of the backend host
History¶
History manage creation of QWidget to display history of a host
-
class
alignak_app.qobjects.host.history.
HistoryQWidget
(parent=None)¶ Bases:
PyQt5.QtWidgets.QWidget
Class who create the History QWidget for host
-
static
get_event_type
(hostname)¶ Return event type for history
Parameters: Returns: the event type
Return type:
-
get_event_widget
(hostname, event)¶ Return event QWidget with icon, event text and event message
Parameters: Returns: widget of event
Return type: QWidget
-
static
get_icon_label
()¶ Return QWidget with corresponding icon to item state
Parameters: event (dict) – data of an event Returns: icon QWidget Return type: QWidget
-
initialize
()¶ Initialize History QWidget
-
static
Host¶
Host manage creation of QWidget to display host data
-
class
alignak_app.qobjects.host.host.
HostQWidget
(parent=None)¶ Bases:
PyQt5.QtWidgets.QWidget
Class who create QWidget to display host data
-
get_actions_widget
()¶ Return QWidget with actions buttons
Returns: widget with buttons Return type: QWidget
-
get_host_icon_widget
()¶ Return QWidget with overall icon state and host name
Returns: widget with host name and icon Return type: QWidget
-
get_last_check_widget
()¶ Return QWidget with last check data
Returns: widget with last check data Return type: QWidget
-
get_notes_output_widget
()¶ Return QWidget with output and notes data
Returns: widget with host output and notes Return type: QWidget
-
get_variables_widget
()¶ Return QWidget with host variables
Returns: widget with host variables Return type: QWidget
-
initialize
()¶ Initialize QWidget
-
patch_data
()¶ Display QDialog for patch
-
patch_host_checks
(check_type, state)¶ Patch the host check: ‘active_checks_enabled’ | ‘passive_checks_enabled’
Parameters:
-
set_data
(hostname)¶ Set data of host and service
Parameters: hostname (str) – name of host to display
-
show_history
()¶ Create and show HistoryQWidget
-
Login¶
The Login package contains QObjects to display connection windows, for login and server settings
Login¶
Login manage creation of QDialog for user login
-
class
alignak_app.qobjects.login.login.
LoginQDialog
(parent=None)¶ Bases:
PyQt5.QtWidgets.QDialog
Class who create login QDialog.
-
accept_login
()¶ Accept Login or not if backend is connected
-
create_widget
()¶ Create widget login
-
handle_proxy
()¶ Handle Proxy QDialog display and set proxies for login
-
static
handle_server
()¶ Handle for Server QDialog and set alignak backend server settings
-
mouseMoveEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
mousePressEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
set_proxy_settings
(proxy_password=None)¶ Set the proxy settings, with password if given
Parameters: proxy_password (str) – the pasword of proxy
-
showEvent
(_)¶ QDialog.showEvent(QShowEvent)
-
Server¶
Server manage creation of QDialog for Alignak backend server settings
-
class
alignak_app.qobjects.login.server.
ServerQDialog
(parent=None)¶ Bases:
PyQt5.QtWidgets.QDialog
Class who create Server QDialog.
-
get_settings_widget
()¶ Return the alignak settings QWidget
Returns: settings QWidget Return type: QWidget
-
initialize_dialog
()¶ Initialize Server QDialog
-
mouseMoveEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
mousePressEvent
(event)¶ QWidget.mousePressEvent(QMouseEvent)
-
Service¶
The Service package contains QObjects to display data of the backend service
Service¶
Service manage creation of QWidget to display service data
-
class
alignak_app.qobjects.service.service.
ServiceDataQWidget
(parent=None)¶ Bases:
PyQt5.QtWidgets.QWidget
Class who create QWidget with service data
-
get_actions_widget
()¶ Return QWidget with actions buttons
Returns: widget with buttons Return type: QWidget
-
get_last_check_widget
()¶ Return QWidget with last check data
Returns: widget with last check data Return type: QWidget
-
get_service_icon_widget
()¶ Return QWidget with its icon and name
Returns: widget with icon and name Return type: QWidget
-
initialize
()¶ Initialize QWidget
-
periodic_refresh
()¶ Refresh QWidget periodically
-
update_widget
(service=None)¶ Update ServiceDataQWidget
Parameters: service (alignak_app.core.models.service.Service) – Service item with its data
-
Services¶
Services manage creation of QWidget to display the services
-
class
alignak_app.qobjects.service.services.
ServicesQWidget
(parent=None)¶ Bases:
PyQt5.QtWidgets.QWidget
Class wo create services QWidget
-
initialize
()¶ Initialize QWidget
-
set_data
(hostname)¶ Set data of host and service
Parameters: hostname (str) – name of host to display
-
update_service_data
()¶ Update ServiceDataqWidget
-
update_widget
()¶ Update the service QWidget
-
Number Services¶
Number Services manage creation of QWidget to display number of host services, for each state
Service Tree Item¶
Service Tree Item manage creation of QTreeWidgetItem(s) to store and display Service item data
-
class
alignak_app.qobjects.service.tree_item.
ServiceTreeItem
(parent=None)¶ Bases:
PyQt5.QtWidgets.QTreeWidgetItem
Class who create QTreeWidgetItem with service data
-
initialize
(service_item)¶ Initialize the QTreeWidgetItem
Parameters: service_item (alignak_app.core.models.service.Service) – service item with its data
-
update_item
()¶ Update QIcon of service
-
Systray¶
The Service package contains QObjects to display system tray icon (taskbar)
App TrayIcon¶
App TrayIcon manage the creation of QSystemTrayIcon for Alignak-app menus
-
class
alignak_app.qobjects.systray.tray_icon.
AppTrayIcon
(icon, parent=None)¶ Bases:
PyQt5.QtWidgets.QSystemTrayIcon
Class who create QMenu and QActions for QSystemTrayIcon (displayed in task bar)
Create and add to menu “about” QAction
Create and add to menu “app” QAction
Create and add to menu “exit” QAction
Create and add to menu “reload” QAction
Create and add to menu “webui” QAction
Initialize and create each QAction of QMenu
-
check_connection
()¶ Check periodically connection to Alignak backend
-
static
quit_app
()¶ Quit application and close all widgets handle by application
Refresh menu if needed
-
static
reload_configuration
()¶ Reload configuration
Threads¶
The Threads package contains QObjects who manage application QThreads
Backend Thread¶
Backend Thread manage creation of QThreads for backend requests
Thread Manager¶
Thread Manager manage BackendQThreads creations and their priority
-
class
alignak_app.qobjects.threads.threadmanager.
ThreadManager
(parent=None)¶ Bases:
PyQt5.QtCore.QObject
Class who create BackendQThreads periodically, to request on Alignak Backend endpoints
-
add_priority_thread
(thread_name, data)¶ Launch a thread with higher priority (doesn’t wait launch_threads() function)
Parameters:
-
clean_threads
()¶ Clean current BackendQThreads
-
get_threads_to_launch
()¶ Return the threads_to_launch to run in BackendQRunnable
Returns: threads_to_launch to run Return type: list
-
launch_threads
()¶ Launch periodically threads
-
stop_priority_threads
()¶ Stop priority threads
-
stop_threads
()¶ Stop ThreadManager and close all running BackendQThreads
-
User¶
The User package contains QObjects to display data of the backend user
User Options¶
User Options manage creation options of QDialogs for user notifications options
-
class
alignak_app.qobjects.user.options.
UserOptionsQDialog
(parent=None)¶ Bases:
PyQt5.QtWidgets.QDialog
Class who create options QDialog
-
get_notifications_widget
(item_type, options)¶ Create QWidget with options and their icons
Parameters: Returns: QWidget with options and icons
Return type: QWidget
-
static
get_selected_options
(options)¶ Return the options who are selected or not
Parameters: Returns: dict of options selected
Return type:
-
Password¶
Password manage Qdialog for user password
Profile¶
Profile manage creation of QWidget who display user profile who use Alignak-app
-
class
alignak_app.qobjects.user.profile.
ProfileQWidget
(parent=None)¶ Bases:
PyQt5.QtWidgets.QWidget
Class who create QWidget for User profile.
-
enable_notifications
(notification_type, btn_state)¶ Enable notification for the wanted type: hosts or services
Parameters:
-
get_hosts_notif_widget
()¶ Create and return notification QWidget for hosts
Returns: hosts notification QWidget Return type: QWidget
-
get_informations_widget
()¶ Create and return QWidget with user informations
Returns: main QWidget Return type: QWidget
-
get_notes_mail_widget
()¶ Return QWidget with notes and email areas and edition buttons
Returns: notes and email QWidget Return type: QWidget
-
get_notifications_widget
()¶ Create and return notification QWidget for hosts and services
Returns: notifications QWidget Return type: QWidget
-
get_services_notif_widget
()¶ Create and return notification QWidget for services
Returns: services notification QWidget Return type: QWidget
-
initialize
()¶ Initialize User QWidget
-
patch_data
(patch_type)¶ Display QDialogs for patches
Parameters: patch_type (str) – type of patch (“notes” or “password”)
-
static
show_token_dialog
()¶ Show Token QDialog
-
update_widget
()¶ Update UserQWidget
-
About¶
About¶
About manage creation of QDialog to display data about Alignak-app
-
class
alignak_app.qobjects.about.
AboutQDialog
(parent=None)¶ Bases:
PyQt5.QtWidgets.QDialog
Class who create QDialog to display about data
-
static
get_external_link_label
(title='')¶ Return QLabel with clickable text
Parameters: Returns: QLabel with clickable link
Return type: QLabel
-
initialize
()¶ Initialize QDialog
-
show_about
()¶ Show about dialog
-
static