// Copyright (c) HashiCorp, Inc. // SPDX-License-Identifier: MPL-2.0 package testcluster import ( "encoding/json" "strings" "github.com/hashicorp/go-hclog" ) func JSONLogNoTimestamp(outlog hclog.Logger, text string) { d := json.NewDecoder(strings.NewReader(text)) m := map[string]interface{}{} if err := d.Decode(&m); err != nil { outlog.Error("failed to decode json output from dev vault", "error", err, "input", text) return } delete(m, "@timestamp") message := m["@message"].(string) delete(m, "@message") level := m["@level"].(string) delete(m, "@level") if module, ok := m["@module"]; ok { delete(m, "@module") outlog = outlog.Named(module.(string)) } var pairs []interface{} for k, v := range m { pairs = append(pairs, k, v) } outlog.Log(hclog.LevelFromString(level), message, pairs...) }