1
0
mirror of https://github.com/peeringdb/peeringdb.git synced 2024-05-11 05:55:09 +00:00
Files
peeringdb-peeringdb/docs/dev/modules/ixf.py.md
Matt Griswold 505760aa8d Support 202203 (#1144)
* Do not show objects in status "pending" on the UI #784

* Fix peeringdb.js bug introduced in #784

* 500 Error during login for 2FA enabled accounts with unverified email address #996

* Django-Admin: adding a network with existing asn fails with internal error #1035

* Some command-line-tool executions are not logged #1119

* Ops: API throttling of repeated requests #1126

* Ops: response header X-Auth-ID to augment logging #1120

* Allow rate-limiting of melissa enabled api functionality. #1124

* State / Province normalization #1079

* Log melissa requests #1122

* remove debug messages

* bump django-handleref to 1.0.2

* Need consolidated app logs #845

* pin django peeringdb to 2.13 and relock poetry

* pin django-restframework-apikey to 2.1.0

* linting

* migrations

* docs regenerate

* docs

* linting

Co-authored-by: David Poarch <dpoarch@20c.com>
Co-authored-by: Stefan Pratter <stefan@20c.com>
2022-04-12 15:39:19 -05:00

2.0 KiB

Generated from ixf.py on 2022-04-12 16:41:02.631987

peeringdb_server.ixf

IX-F importer implementation.

Handles import of ix-f feeds, creation of suggestions for networks and exchanges to follow.

Handles notifications of networks and exchanges as part of that process.

A substantial part of the import logic is handled through models.py::IXFMemberData

Classes


MultipleVlansInPrefix

MultipleVlansInPrefix(builtins.ValueError)

This error is raised when an ix-f export contains multiple vlan ids for the prefixes defined in the processed ixlan.

Since peeringdb treats each vlan as it's own exchange this currently is not a compatible setup for import (see #889).

Methods

_init_

def __init__(self, importer, *args, **kwargs)

Initialize self. See help(type(self)) for accurate signature.


PostMortem

PostMortem(builtins.object)

Generate postmortem report for ix-f import.

Methods

_process_log_entry

def _process_log_entry(self, log, entry)

Process a single IX-F import log entry.

Argument(s):

- log <IXLanIXFMemberImportLog>
- entry <IXLanIXFMemberImportLogEntry>

_process_logs

def _process_logs(self, limit=100)

Process IX-F import logs.

KeywordArgument(s):

 - limit <int=100>: limit amount of import logs to process
  max limit is defined by server config `IXF_POSTMORTEM_LIMIT`

generate

def generate(self, asn, **kwargs)

Generate and return a new postmortem report.

Argument(s):

- asn <int>: asn of the network to run postmortem
  report for

Keyword Argument(s):

- limit <int=100>: limit amount of import logs to process
  max limit is defined by server config `IXF_POSTMORTEM_LIMIT`

Returns:

- dict: postmortem report

reset

def reset(self, asn, **kwargs)

Reset for a fresh run.

Argument(s):

- asn <int>: asn of the network to run postormem
  report for

Keyword Argument(s):

- limit <int=100>: limit amount of import logs to process
  max limit is defined by server config `IXF_POSTMORTEM_LIMIT`