epicsarchiver.statistics.configuration

Module for getting the PVs which have been requested to be submitted to the archiver.

Also calculates if a PV is being archived with no configuration left over, common when a PV name has changed.

Attributes

LOG

CHANNELFINDER_ARCHIVE_TAG

CHANNELFINDER_ARCHIVER_ALIAS

Classes

ConfigOptions

Options in how a PV can be configured.

Functions

_fetch_configured_pvs_channelfinder(→ set[str])

_fetch_configured_pvs_gitlab(→ set[str])

get_not_configured(...)

Return list of pvs archived but not in config or configured but not archived.

_get_configuration_responses(...)

get_aliases(→ dict[str, list[str]])

Get the aliases for a list of pvs.

Module Contents

epicsarchiver.statistics.configuration.LOG: logging.Logger[source]
epicsarchiver.statistics.configuration.CHANNELFINDER_ARCHIVE_TAG = 'aa_policy'[source]
epicsarchiver.statistics.configuration.CHANNELFINDER_ARCHIVER_ALIAS = 'archiver'[source]
class epicsarchiver.statistics.configuration.ConfigOptions[source]

Options in how a PV can be configured.

gitlab_repo: Repository where archive config files ly archiver_alias: Tag used in ChannelFinder to select an archiver cluster.

gitlab_repo: pathlib.Path | None[source]
archiver_alias: str | None[source]
async epicsarchiver.statistics.configuration._fetch_configured_pvs_channelfinder(channelfinder: epicsarchiver.statistics.services.channelfinder.ChannelFinder, archiver_alias: str, filter_pvs: set[str] | None = None) set[str][source]
async epicsarchiver.statistics.configuration._fetch_configured_pvs_gitlab(config_gitlab_repo: pathlib.Path) set[str][source]
async epicsarchiver.statistics.configuration.get_not_configured(archiver: epicsarchiver.statistics.services.archiver_statistics.ArchiverWrapper, channelfinder: epicsarchiver.statistics.services.channelfinder.ChannelFinder, config_options: ConfigOptions, ioc_name: str | None = None, filter_pvs: set[str] | None = None) list[epicsarchiver.statistics.models.stat_responses.NoConfigResponse][source]

Return list of pvs archived but not in config or configured but not archived.

Parameters:
  • archiver (ArchiverAppliance) – archiver

  • channelfinder (ChannelFinder) – channelfinder

  • config_options (ConfigOptions) – Options on how submit PV to be archived

  • ioc_name (str) – Name of an ioc to filter by

  • filter_pvs (set[str]) – Set of pvs to filter by

Returns:

Details of pvs.

Return type:

list[NoConfigResponse]

async epicsarchiver.statistics.configuration._get_configuration_responses(channelfinder: epicsarchiver.statistics.services.channelfinder.ChannelFinder, all_pvs: set[str], pvs: set[str], status: epicsarchiver.statistics.models.stat_responses.ConfiguredStatus, ioc_name: str | None = None) list[epicsarchiver.statistics.models.stat_responses.NoConfigResponse][source]
async epicsarchiver.statistics.configuration.get_aliases(channelfinder: epicsarchiver.statistics.services.channelfinder.ChannelFinder, pvs: list[str], ioc_name: str | None) dict[str, list[str]][source]

Get the aliases for a list of pvs.

Parameters:
  • channelfinder (ChannelFinder) – channelfinder

  • pvs (list[str]) – list of pv names

  • ioc_name (str) – ioc to filter by

Returns:

dictionary mapping pv name to list of aliases

Return type:

dict[str, list[str]]