feat: add standalone server topology view

This commit is contained in:
Mikhail Chusavitin
2026-09-14 10:29:36 +03:00
parent 5b8be0e464
commit 9ac38c2914
28 changed files with 1287 additions and 31 deletions
+19 -4
View File
@@ -16,10 +16,11 @@ import (
const rawExportFormatV1 = "logpile.raw-export.v1"
const (
rawExportBundlePackageFile = "raw_export.json"
rawExportBundleLogFile = "collect.log"
rawExportBundleFieldsFile = "parser_fields.json"
rawExportBundlePrivacyFile = "privacy_report.json"
rawExportBundlePackageFile = "raw_export.json"
rawExportBundleLogFile = "collect.log"
rawExportBundleFieldsFile = "parser_fields.json"
rawExportBundlePrivacyFile = "privacy_report.json"
rawExportBundleTopologyFile = "topology.json"
)
type RawExportPackage struct {
@@ -165,6 +166,20 @@ func buildRawExportBundle(pkg *RawExportPackage, result *models.AnalysisResult,
}
}
if topologyDoc, topologyErr := currentTopologyDocument(result); topologyErr == nil && len(topologyDoc.Nodes) > 0 {
tf, err := zw.Create(rawExportBundleTopologyFile)
if err != nil {
return nil, err
}
topologyJSON, err := json.MarshalIndent(topologyDoc, "", " ")
if err != nil {
return nil, err
}
if _, err := tf.Write(topologyJSON); err != nil {
return nil, err
}
}
if err := zw.Close(); err != nil {
return nil, err
}