epicsarchiver_mgmt.commands.clear_queue ======================================= .. py:module:: epicsarchiver_mgmt.commands.clear_queue .. autoapi-nested-parse:: Rearchive a pv to update the policy. Attributes ---------- .. autoapisummary:: epicsarchiver_mgmt.commands.clear_queue.LOG epicsarchiver_mgmt.commands.clear_queue.CURRENT_STATE epicsarchiver_mgmt.commands.clear_queue.DATE_FORMAT Exceptions ---------- .. autoapisummary:: epicsarchiver_mgmt.commands.clear_queue.OldTimeValueError Classes ------- .. autoapisummary:: epicsarchiver_mgmt.commands.clear_queue.ArchivingState epicsarchiver_mgmt.commands.clear_queue.NeverConnectedPV epicsarchiver_mgmt.commands.clear_queue.QueueFilter Functions --------- .. autoapisummary:: epicsarchiver_mgmt.commands.clear_queue.get_never_connected_pvs epicsarchiver_mgmt.commands.clear_queue.abort_pvs_in_queue epicsarchiver_mgmt.commands.clear_queue.filter_queue_by_state epicsarchiver_mgmt.commands.clear_queue.clear_queue Module Contents --------------- .. py:data:: LOG :type: logging.Logger .. py:data:: CURRENT_STATE :value: 'currentState' .. py:class:: ArchivingState(*args, **kwds) Bases: :py:obj:`enum.Enum` Archiving state of a PV in the queue. .. py:attribute:: START Start is the start of the archiving workflow. .. py:attribute:: ARCHIVE_REQUEST_SUBMITTED Request has been submitted to the archiver. .. py:attribute:: METAINFO_GATHERING Reading data from the PV to decide archiving policy. .. py:attribute:: UNKNOWN Unknown state. .. py:method:: from_str(state: str) -> ArchivingState :classmethod: Convert a string to an ArchivingState. :param state: The string to convert. :type state: str :returns: The ArchivingState. :rtype: ArchivingState .. py:class:: NeverConnectedPV Response struct from never connected pvs. .. py:attribute:: request_time :type: datetime.datetime | None .. py:attribute:: appliance :type: str .. py:attribute:: pv_name :type: str .. py:attribute:: current_state :type: ArchivingState .. py:attribute:: start_of_workflow :type: datetime.datetime .. py:data:: DATE_FORMAT :value: '%b/%d/%Y %H:%M:%S %Z' .. py:function:: get_never_connected_pvs(archiver: epicsarchiver_mgmt.archiver.mgmt.ArchiverMgmt) -> list[NeverConnectedPV] Get Never connected pvs from archiver. :param archiver: The archiver management instance. :type archiver: ArchiverMgmt :returns: List of Never connected pvs. :rtype: list[NeverConnectedPV] .. py:function:: abort_pvs_in_queue(pvs: list[str], archiver: epicsarchiver_mgmt.archiver.mgmt.ArchiverMgmt, chunking: int = 1000) -> set[str] Get the list of PVs that are currently being archived in the queue and abort them. :param pvs: List of PV names to check. :type pvs: list[str] :param archiver: The archiver management instance. :type archiver: ArchiverMgmt :param chunking: Number of PVs to check in each request to the archiver. :type chunking: int :returns: List of PV names that are currently being archived. :rtype: list[str] .. py:class:: QueueFilter(*args, **kwds) Bases: :py:obj:`enum.Enum` Filter for the queue. .. py:attribute:: ALL .. py:attribute:: START .. py:attribute:: METAINFO_GATHERING .. py:attribute:: ARCHIVING .. py:exception:: OldTimeValueError(queue_filter: QueueFilter) Bases: :py:obj:`epicsarchiver_mgmt.exceptions.BaseMgmtError` Custom exception for when old_time is required but not provided. .. py:function:: filter_queue_by_state(archiver: epicsarchiver_mgmt.archiver.mgmt.ArchiverMgmt, queue_info: list[NeverConnectedPV], queue_filter: QueueFilter, old_time: datetime.timedelta | None) -> list[str] Filter the queue by state. :param archiver: The archiver management instance. :type archiver: ArchiverMgmt :param queue_info: The queue information. :type queue_info: list[NeverConnectedPV] :param queue_filter: The filter to apply. :type queue_filter: QueueFilter :param old_time: The time after which a PV is considered stuck. :type old_time: datetime.timedelta | None :returns: The filtered queue information. :rtype: list[NeverConnectedPV] :raises OldTimeValueError: If old_time is required but not provided. .. py:function:: clear_queue(archiver_fqdn: str, queue_filter: QueueFilter, old_time: datetime.timedelta | None) -> None Clear the queue of the archiver. :param archiver_fqdn: The url of the archiver. :type archiver_fqdn: str :param queue_filter: The filter to apply. :type queue_filter: QueueFilter :param old_time: The time after which a PV is considered stuck. :type old_time: timedelta | None