* Block registering private ASN ranges * Add a continental region field for facilities #1007 * Incorrect order of search results #232 * Allow users to upload a small logo to their record #346 * Sponsor badge CSS and text translation issues #453 * IXP and Facility summary #18 * Add sales email and phone contact to ix object #949 * Increase timeout timer for IX-F JSON importer to 30s #962 * IX-F manually triggered import bugs #1054 * remove survey notifications * IX-F importer: manual add followed by IX-F prompted add can result in "The server rejected your data" #807 * performance fix for net view * api documentation generate broken #956 * fix poc set missing from net view * Auto focus cursor on search field on main website #695 * PeeringDB website has a poor choice of line-breaks for IPv6 addresses. #748 * Delete childless org objects #838 * linting * poetry lock * re-add mistakingly dropped translation to email template * fix template variables * regen docs * regen api docs * fix merge cruft * django-peeringdb to 2.11 and poetry relock * linting * comment out django-peeringdb volume mount * add missing declaration Co-authored-by: Stefan Pratter <stefan@20c.com> Co-authored-by: David Poarch <dpoarch@20c.com>
2.0 KiB
Generated from ixf.py on 2021-11-02 10:01:21.611533
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`