2021-04-09 10:36:42 -07:00
|
|
|
[Home](https://kellyjonbrazil.github.io/jc/)
|
2022-01-25 17:07:47 -08:00
|
|
|
<a id="jc.parsers.tracepath"></a>
|
2020-07-30 16:20:24 -07:00
|
|
|
|
2020-07-27 11:02:13 -07:00
|
|
|
# jc.parsers.tracepath
|
2022-01-25 17:07:47 -08:00
|
|
|
|
2020-08-05 16:51:58 -07:00
|
|
|
jc - JSON CLI output utility `tracepath` command output parser
|
|
|
|
|
|
|
|
Supports `tracepath` and `tracepath6` output.
|
2020-07-27 11:02:13 -07:00
|
|
|
|
2020-08-05 13:32:59 -07:00
|
|
|
Usage (cli):
|
2020-07-27 11:02:13 -07:00
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
$ tracepath 1.2.3.4 | jc --tracepath
|
2020-08-05 16:51:58 -07:00
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
or
|
2020-08-05 16:51:58 -07:00
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
$ jc tracepath 1.2.3.4
|
2020-07-27 11:02:13 -07:00
|
|
|
|
2020-08-05 13:32:59 -07:00
|
|
|
Usage (module):
|
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
import jc
|
|
|
|
result = jc.parse('tracepath', tracepath_command_output)
|
2022-01-18 15:38:03 -08:00
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
or
|
2022-01-18 15:38:03 -08:00
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
import jc.parsers.tracepath
|
|
|
|
result = jc.parsers.tracepath.parse(tracepath_command_output)
|
2020-08-05 13:32:59 -07:00
|
|
|
|
2021-04-08 15:52:49 -07:00
|
|
|
Schema:
|
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
{
|
|
|
|
"pmtu": integer,
|
|
|
|
"forward_hops": integer,
|
|
|
|
"return_hops": integer,
|
|
|
|
"hops": [
|
|
|
|
{
|
|
|
|
"ttl": integer,
|
|
|
|
"guess": boolean,
|
|
|
|
"host": string,
|
|
|
|
"reply_ms": float,
|
|
|
|
"pmtu": integer,
|
|
|
|
"asymmetric_difference": integer,
|
|
|
|
"reached": boolean
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
|
|
|
|
**Examples**:
|
|
|
|
|
|
|
|
|
|
|
|
$ tracepath6 3ffe:2400:0:109::2 | jc --tracepath -p
|
|
|
|
{
|
|
|
|
- `"pmtu"` - 1480,
|
|
|
|
- `"forward_hops"` - 2,
|
|
|
|
- `"return_hops"` - 2,
|
|
|
|
- `"hops"` - [
|
|
|
|
{
|
|
|
|
- `"ttl"` - 1,
|
|
|
|
- `"guess"` - true,
|
|
|
|
- `"host"` - "[LOCALHOST]",
|
|
|
|
- `"reply_ms"` - null,
|
|
|
|
- `"pmtu"` - 1500,
|
|
|
|
- `"asymmetric_difference"` - null,
|
|
|
|
- `"reached"` - false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
- `"ttl"` - 1,
|
|
|
|
- `"guess"` - false,
|
|
|
|
- `"host"` - "dust.inr.ac.ru",
|
|
|
|
- `"reply_ms"` - 0.411,
|
|
|
|
- `"pmtu"` - null,
|
|
|
|
- `"asymmetric_difference"` - null,
|
|
|
|
- `"reached"` - false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
- `"ttl"` - 2,
|
|
|
|
- `"guess"` - false,
|
|
|
|
- `"host"` - "dust.inr.ac.ru",
|
|
|
|
- `"reply_ms"` - 0.39,
|
|
|
|
- `"pmtu"` - 1480,
|
|
|
|
- `"asymmetric_difference"` - 1,
|
|
|
|
- `"reached"` - false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
- `"ttl"` - 2,
|
|
|
|
- `"guess"` - false,
|
|
|
|
- `"host"` - "3ffe:2400:0:109::2",
|
|
|
|
- `"reply_ms"` - 463.514,
|
|
|
|
- `"pmtu"` - null,
|
|
|
|
- `"asymmetric_difference"` - null,
|
|
|
|
- `"reached"` - true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
|
|
|
|
$ tracepath6 3ffe:2400:0:109::2 | jc --tracepath -p -r
|
|
|
|
{
|
|
|
|
- `"pmtu"` - "1480",
|
|
|
|
- `"forward_hops"` - "2",
|
|
|
|
- `"return_hops"` - "2",
|
|
|
|
- `"hops"` - [
|
|
|
|
{
|
|
|
|
- `"ttl"` - "1",
|
|
|
|
- `"guess"` - true,
|
|
|
|
- `"host"` - "[LOCALHOST]",
|
|
|
|
- `"reply_ms"` - null,
|
|
|
|
- `"pmtu"` - "1500",
|
|
|
|
- `"asymmetric_difference"` - null,
|
|
|
|
- `"reached"` - false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
- `"ttl"` - "1",
|
|
|
|
- `"guess"` - false,
|
|
|
|
- `"host"` - "dust.inr.ac.ru",
|
|
|
|
- `"reply_ms"` - "0.411",
|
|
|
|
- `"pmtu"` - null,
|
|
|
|
- `"asymmetric_difference"` - null,
|
|
|
|
- `"reached"` - false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
- `"ttl"` - "2",
|
|
|
|
- `"guess"` - false,
|
|
|
|
- `"host"` - "dust.inr.ac.ru",
|
|
|
|
- `"reply_ms"` - "0.390",
|
|
|
|
- `"pmtu"` - "1480",
|
|
|
|
- `"asymmetric_difference"` - "1",
|
|
|
|
- `"reached"` - false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
- `"ttl"` - "2",
|
|
|
|
- `"guess"` - false,
|
|
|
|
- `"host"` - "3ffe:2400:0:109::2",
|
|
|
|
- `"reply_ms"` - "463.514",
|
|
|
|
- `"pmtu"` - null,
|
|
|
|
- `"asymmetric_difference"` - null,
|
|
|
|
- `"reached"` - true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
|
|
|
|
<a id="jc.parsers.tracepath.info"></a>
|
|
|
|
|
|
|
|
## info Objects
|
|
|
|
|
2020-07-27 11:02:13 -07:00
|
|
|
```python
|
2022-01-25 17:07:47 -08:00
|
|
|
class info()
|
2020-07-27 11:02:13 -07:00
|
|
|
```
|
2022-01-25 17:07:47 -08:00
|
|
|
|
2021-04-08 15:52:49 -07:00
|
|
|
Provides parser metadata (version, author, etc.)
|
2020-07-30 16:20:24 -07:00
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
<a id="jc.parsers.tracepath.parse"></a>
|
|
|
|
|
|
|
|
#### parse
|
|
|
|
|
2020-07-27 11:02:13 -07:00
|
|
|
```python
|
2022-01-25 17:07:47 -08:00
|
|
|
def parse(data, raw=False, quiet=False)
|
2020-07-27 11:02:13 -07:00
|
|
|
```
|
|
|
|
|
|
|
|
Main text parsing function
|
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
**Arguments**:
|
2020-07-27 11:02:13 -07:00
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
|
|
|
|
- `data` - (string) text data to parse
|
|
|
|
- `raw` - (boolean) unprocessed output if True
|
|
|
|
- `quiet` - (boolean) suppress warning messages if True
|
|
|
|
|
2020-07-27 11:02:13 -07:00
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
**Returns**:
|
2020-07-27 11:02:13 -07:00
|
|
|
|
2022-01-25 17:07:47 -08:00
|
|
|
|
|
|
|
Dictionary. Raw or processed structured data.
|
2020-07-27 11:02:13 -07:00
|
|
|
|
2021-04-09 10:36:42 -07:00
|
|
|
## Parser Information
|
|
|
|
Compatibility: linux
|
|
|
|
|
2021-12-01 16:12:51 -08:00
|
|
|
Version 1.3 by Kelly Brazil (kellyjonbrazil@gmail.com)
|