API Reference
This reference documents the core modules of eida-consistency.
Core Checker
eida_consistency.core.checker
Pick random epochs and check availability coverage (returns location and matched span).
This module selects up to epochs unique (network, station, channel) items from the
candidate pool. For each channel, it queries /availability/1/query?format=json once for
the entire epoch-span (from StationXML). Then, within that span, it picks random test
epochs of length duration seconds.
Return value
results, stats
results = [ ( availability_url, # the availability request URL (full epoch-span) availability_ok, # True/False depending on slice coverage epoch_start_iso, # slice start epoch_end_iso, # slice end location_exact, # location code (from matched span or StationXML) matched_span # the span dict that covered the slice (or None) ), ... ]
stats = { "candidates_requested": epochs, "candidates_generated": len(results), "candidates_pool": len(pool), "queries_performed": attempts, }
check_candidate(base_url, candidate, candidates=None, epochs=10, duration=600)
Build up to epochs test cases and check availability coverage.
Returns
results : list of tuples (availability_url, availability_ok, epoch_start_iso, epoch_end_iso, location_exact, matched_span) stats : dict {"candidates_requested", "candidates_generated", "candidates_pool", "queries_performed"}
Source code in src/eida_consistency/core/checker.py
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 | |
Runner
eida_consistency.runner
CLI entry point and orchestration for running consistency checks.
run_consistency_check(node, epochs=10, percentage=None, duration=600, seed=None, delete_old=False, max_workers=10, print_stdout=False, report_dir=REPORT_DIR, station_multiplier=3)
Run the availability + dataselect consistency check and write reports.
Returns
Optional[Path] The path to the saved JSON report, or None if nothing was generated (e.g., no candidates).
Source code in src/eida_consistency/runner.py
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 | |