21 lines
415 B
Go
21 lines
415 B
Go
package event
|
|
|
|
import "fmt"
|
|
|
|
func addFields(event map[string]interface{}, fields map[string]interface{}, protected ...string) error {
|
|
if len(fields) == 0 {
|
|
return nil
|
|
}
|
|
block := map[string]struct{}{}
|
|
for _, key := range protected {
|
|
block[key] = struct{}{}
|
|
}
|
|
for k, v := range fields {
|
|
if _, ok := block[k]; ok {
|
|
return fmt.Errorf("fields must not override %s", k)
|
|
}
|
|
event[k] = v
|
|
}
|
|
return nil
|
|
}
|