Merged
Conversation
- New upload_to_kusto.py script for uploading CSV files to Azure Data Explorer - Solution Analyzer mode uploads all 10 CSVs with predefined table names - Supports local source directory (--source-dir) or GitHub download - Added script documentation in script-docs/upload_to_kusto.md - Updated README.md with new tool entry and v7.9 changelog
Add ignore_first_record=True to both ingestion paths to prevent the CSV header line from being uploaded as a data row.
…pabilities extraction - New 'CCF Push' collection method for connectors using DCR/DCE push ingestion (11 connectors, detected via DeployPushConnectorButton pattern) - New ccf_config_file column in connectors.csv with GitHub URL to CCF config (122 out of 133 CCF/CCF Push connectors have config files identified) - New ccf_capabilities column extracting auth type, paging, POST, MvExpand from CCF config JSON (103 connectors with capabilities) - CCF Push entry in COLLECTION_METHODS_METADATA for doc generation - Connector detail pages now show CCF Configuration link and CCF Capabilities - Updated script-docs and README with v7.9.1 changelog - Added --skip-input-generation to copilot-instructions.md
… New CCF (Legacy) type for 9 connectors with embedded pollingConfig and no\n separate CCF config file (Dynatrace x4, Egress, Island x2, LastPass, Seraphic)\n- extract_legacy_ccf_capabilities() extracts auth/paging/POST from pollingConfig\n- Improved find_ccf_config_file(): finds connectors.json (Bitwarden) and\n searches sibling *_ccp/ directories (GCP)\n- CCF (Legacy) added to doc generator COLLECTION_METHODS_METADATA and stats\n- Updated README changelog, mapper and doc generator script docs
…er pattern in CCF_CONFIG_PATTERNS was matching azuredeploy ARM\ntemplate files (e.g., azuredeploy_Okta_native_poller_connector_v2.json)\ninstead of actual CCF config files (e.g., OktaSSOv2_PollingConfig.json).\n\nAdded azuredeploy and mainTemplate to skip patterns in find_ccf_config_file().\nFixes 16 connectors that had wrong config files, including OktaSSOv2.\nOktaSSO_Polling (v1) correctly reclassified as CCF (Legacy) since its\nonly file was the azuredeploy ARM template with embedded pollingConfig.
…n\n- Replace misleading em-dash (—) with ? for 'no information available' in\n generated docs (table features, tables count, solution links, etc.)\n- Copilot instructions: add isBackground:false and timeout:0 for both\n mapper and doc generator scripts to ensure full output visibility
…_ccf_config_file() now skips the connector JSON file itself, preventing\nself-referencing where the primary file was returned as the config file.\nAlso searches child *_ccp/ directories (not just siblings), fixing\nCortexXDR which has CortexXDR_ccp/ as a child of Data Connectors/.\n\nFixes: Phosphorus_Polling, EgressSiemPolling -> CCF (Legacy)\n CortexXDRIncidents -> CCF (finds PollingConfig.json in child _ccp/)
…pport transformations Custom log tables (_CL suffix) are not listed in Microsoft's reference docs, so their capabilities were incorrectly reported. Applied rules: - All _CL tables: ingestion_api_supported = Yes - _CL tables with lake-only support: supports_transformations = Yes Fix applied in both collect_table_info.py (for tables_reference.csv) and map_solutions_connectors_tables.py (for tables.csv, covering _CL tables not in the reference).
yummyblabla
approved these changes
Feb 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
v7.9.2 - CCF Legacy, Capabilities Statistics, and ASIM Parser Fixes
CCF (Legacy) Collection Method:
CCF (Legacy)collection method for connectors with embeddedpollingConfigin their primary ARM template and no separate CCF config filepollingConfigfor legacy CCF connectorsfind_ccf_config_file()detection: now findsconnectors.json(Bitwarden-style) and searches sibling*_ccp/subdirectories (GCP-style)CCF Capabilities Statistics:
Nestedcapability: detectsstepType: Nestedin CCF config filesMvExpanddetection: now usesnestedTransformNamecontainingMvExpandTransformerinstead of text-based searchCustom Log Table Rules (collect_table_info.py):
_CLtables now correctly marked as supporting Ingestion API_CLtables with lake-only support now also marked as supporting transformationsBug Fixes:
imDns): sub-parsers listed with_Im_prefix now correctly resolve product names and page links from_ASim_source parser data_Im_Dns_Empty,_Im_AlertEvent_Empty) from the Products table on union parser pages_Im_prefixed sub-parsers now correctly link to their_ASim_parser page filesv7.9.1 - CCF Push and CCF Capabilities
CCF Push Collection Method:
CCF Pushfor connectors using CCF in push mode (partner pushes data via DCR/DCE)DeployPushConnectorButton+HasDataConnectorspattern now classified as "CCF Push" instead of "CCF"CCF Configuration and Capabilities:
ccf_config_filecolumn inconnectors.csv: GitHub URL to the CCF configuration file (polling/poller/push config)ccf_capabilitiescolumn inconnectors.csv: semicolon-separated capabilities extracted from the config JSONv7.9 - Kusto Uploader
New Tool:
upload_to_kusto.py--solution-analyzer): uploads all 10 Solution Analyzer CSVs with predefined table names--source-dir): read Solution Analyzer CSVs from a local folder instead of downloading from GitHub--dry-run): preview operations before executingstringtype with automatic CSV mapping