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
Stefan Pratter 3ee0d1ea5e Support 202205 (#1188)
* Add "Last login" to https://peeringdb.com/cp/peeringdb_server/user/ #879

* Bug in renumbering tool #660

* Add the IX name and id to IX-F Import Emails #963

* Use username to create deskpro person when no first-name / last-name data exists #1057

* Organization merge tool usergroup issues #930

* Exempt superusers (PeeringDB Admin Committee & Operations Committee admins) from throttling #1172

* add missing migration for #1172

* linting

* poetry relock

* adapt to django-two-factor-auth template-tag renaming changes

* increase default for DATA_QUALITY_MAX_SPEED to 5Tb

* regenerate docs

* fix api test for netixlan max speed validation

* pdb_api_cache command needs to disable CSRF_USE_SESSIONS before it runs

Co-authored-by: David Poarch <dpoarch@20c.com>
2022-06-15 07:23:26 -05:00

2.0 KiB

Generated from ixf.py on 2022-06-14 09:38:55.484251

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`