- Introduced AGENTS.md, README.md, TASKS.md, and implementation_plan.md for Vexer, detailing mission, responsibilities, key components, and operational notes. - Established similar documentation structure for Vulnerability Explorer and Zastava modules, including their respective workflows, integrations, and observability notes. - Created risk scoring profiles documentation outlining the core workflow, factor model, governance, and deliverables. - Ensured all modules adhere to the Aggregation-Only Contract and maintain determinism and provenance in outputs.
		
			
				
	
	
		
			152 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
			
		
		
	
	
			152 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			JSON
		
	
	
	
	
	
| {
 | |
|   "title": "Concelier CVE & KEV Observability",
 | |
|   "uid": "concelier-cve-kev",
 | |
|   "schemaVersion": 38,
 | |
|   "version": 1,
 | |
|   "editable": true,
 | |
|   "timezone": "",
 | |
|   "time": {
 | |
|     "from": "now-24h",
 | |
|     "to": "now"
 | |
|   },
 | |
|   "refresh": "5m",
 | |
|   "templating": {
 | |
|     "list": [
 | |
|       {
 | |
|         "name": "datasource",
 | |
|         "type": "datasource",
 | |
|         "query": "prometheus",
 | |
|         "refresh": 1,
 | |
|         "hide": 0
 | |
|       }
 | |
|     ]
 | |
|   },
 | |
|   "panels": [
 | |
|     {
 | |
|       "type": "timeseries",
 | |
|       "title": "CVE fetch success vs failure",
 | |
|       "gridPos": { "h": 9, "w": 12, "x": 0, "y": 0 },
 | |
|       "fieldConfig": {
 | |
|         "defaults": {
 | |
|           "unit": "ops",
 | |
|           "custom": {
 | |
|             "drawStyle": "line",
 | |
|             "lineWidth": 2,
 | |
|             "fillOpacity": 10
 | |
|           }
 | |
|         },
 | |
|         "overrides": []
 | |
|       },
 | |
|       "targets": [
 | |
|         {
 | |
|           "refId": "A",
 | |
|           "expr": "rate(cve_fetch_success_total[5m])",
 | |
|           "datasource": { "type": "prometheus", "uid": "${datasource}" },
 | |
|           "legendFormat": "success"
 | |
|         },
 | |
|         {
 | |
|           "refId": "B",
 | |
|           "expr": "rate(cve_fetch_failures_total[5m])",
 | |
|           "datasource": { "type": "prometheus", "uid": "${datasource}" },
 | |
|           "legendFormat": "failure"
 | |
|         }
 | |
|       ]
 | |
|     },
 | |
|     {
 | |
|       "type": "timeseries",
 | |
|       "title": "KEV fetch cadence",
 | |
|       "gridPos": { "h": 9, "w": 12, "x": 12, "y": 0 },
 | |
|       "fieldConfig": {
 | |
|         "defaults": {
 | |
|           "unit": "ops",
 | |
|           "custom": {
 | |
|             "drawStyle": "line",
 | |
|             "lineWidth": 2,
 | |
|             "fillOpacity": 10
 | |
|           }
 | |
|         },
 | |
|         "overrides": []
 | |
|       },
 | |
|       "targets": [
 | |
|         {
 | |
|           "refId": "A",
 | |
|           "expr": "rate(kev_fetch_success_total[30m])",
 | |
|           "datasource": { "type": "prometheus", "uid": "${datasource}" },
 | |
|           "legendFormat": "success"
 | |
|         },
 | |
|         {
 | |
|           "refId": "B",
 | |
|           "expr": "rate(kev_fetch_failures_total[30m])",
 | |
|           "datasource": { "type": "prometheus", "uid": "${datasource}" },
 | |
|           "legendFormat": "failure"
 | |
|         },
 | |
|         {
 | |
|           "refId": "C",
 | |
|           "expr": "rate(kev_fetch_unchanged_total[30m])",
 | |
|           "datasource": { "type": "prometheus", "uid": "${datasource}" },
 | |
|           "legendFormat": "unchanged"
 | |
|         }
 | |
|       ]
 | |
|     },
 | |
|     {
 | |
|       "type": "table",
 | |
|       "title": "KEV parse anomalies (24h)",
 | |
|       "gridPos": { "h": 8, "w": 12, "x": 0, "y": 9 },
 | |
|       "fieldConfig": {
 | |
|         "defaults": {
 | |
|           "unit": "short"
 | |
|         },
 | |
|         "overrides": []
 | |
|       },
 | |
|       "targets": [
 | |
|         {
 | |
|           "refId": "A",
 | |
|           "expr": "sum by (reason) (increase(kev_parse_anomalies_total[24h]))",
 | |
|           "format": "table",
 | |
|           "datasource": { "type": "prometheus", "uid": "${datasource}" }
 | |
|         }
 | |
|       ],
 | |
|       "transformations": [
 | |
|         {
 | |
|           "id": "organize",
 | |
|           "options": {
 | |
|             "renameByName": {
 | |
|               "Value": "count"
 | |
|             }
 | |
|           }
 | |
|         }
 | |
|       ]
 | |
|     },
 | |
|     {
 | |
|       "type": "timeseries",
 | |
|       "title": "Advisories emitted",
 | |
|       "gridPos": { "h": 8, "w": 12, "x": 12, "y": 9 },
 | |
|       "fieldConfig": {
 | |
|         "defaults": {
 | |
|           "unit": "ops",
 | |
|           "custom": {
 | |
|             "drawStyle": "line",
 | |
|             "lineWidth": 2,
 | |
|             "fillOpacity": 10
 | |
|           }
 | |
|         },
 | |
|         "overrides": []
 | |
|       },
 | |
|       "targets": [
 | |
|         {
 | |
|           "refId": "A",
 | |
|           "expr": "rate(cve_map_success_total[15m])",
 | |
|           "datasource": { "type": "prometheus", "uid": "${datasource}" },
 | |
|           "legendFormat": "CVE"
 | |
|         },
 | |
|         {
 | |
|           "refId": "B",
 | |
|           "expr": "rate(kev_map_advisories_total[24h])",
 | |
|           "datasource": { "type": "prometheus", "uid": "${datasource}" },
 | |
|           "legendFormat": "KEV"
 | |
|         }
 | |
|       ]
 | |
|     }
 | |
|   ]
 | |
| }
 |