mirror of
https://github.com/peeringdb/peeringdb.git
synced 2024-05-11 05:55:09 +00:00
* 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>
108 lines
2.0 KiB
Markdown
108 lines
2.0 KiB
Markdown
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`
|
|
|
|
---
|