Skip to content

Commit c6dd904

Browse files
committed
Migration of stdout logger to a separate package
1 parent c073753 commit c6dd904

File tree

3 files changed

+22
-19
lines changed

3 files changed

+22
-19
lines changed

authz/audit/audit_logger.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ type Event struct {
7979
// logger configuration. Concrete types representing configuration of specific
8080
// audit loggers must embed this interface to implement it.
8181
type LoggerConfig interface {
82-
loggerConfig()
82+
LoggerConfig()
8383
}
8484

8585
// Logger is the interface to be implemented by audit loggers.
Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,14 @@
1616
*
1717
*/
1818

19-
package audit
19+
package stdout
2020

2121
import (
2222
"encoding/json"
2323
"log"
2424
"time"
2525

26+
"google.golang.org/grpc/authz/audit"
2627
"google.golang.org/grpc/grpclog"
2728
)
2829

@@ -38,15 +39,15 @@ type StdoutEvent struct {
3839
Timestamp string `json:"timestamp"`
3940
}
4041

41-
type StdOutLogger struct {
42+
type StdoutLogger struct {
4243
}
4344

44-
func (logger *StdOutLogger) Log(event *Event) {
45+
func (logger *StdoutLogger) Log(event *audit.Event) {
4546
jsonBytes, err := json.Marshal(convertEvent(event))
4647
if err != nil {
4748
grpcLogger.Errorf("failed to marshal AuditEvent data to JSON: %v", err)
4849
}
49-
log.Println(string(jsonBytes)) // built in log.go
50+
log.Println(string(jsonBytes))
5051
}
5152

5253
const (
@@ -55,25 +56,25 @@ const (
5556

5657
type StdoutLoggerConfig struct{}
5758

58-
func (StdoutLoggerConfig) loggerConfig() {}
59+
func (StdoutLoggerConfig) LoggerConfig() {}
5960

60-
type StdOutLoggerBuilder struct{}
61+
type StdoutLoggerBuilder struct{}
6162

62-
func (StdOutLoggerBuilder) Name() string {
63+
func (StdoutLoggerBuilder) Name() string {
6364
return stdName
6465
}
6566

66-
func (StdOutLoggerBuilder) Build(LoggerConfig) Logger {
67-
return &StdOutLogger{}
67+
func (StdoutLoggerBuilder) Build(audit.LoggerConfig) audit.Logger {
68+
return &StdoutLogger{}
6869
}
6970

70-
func (StdOutLoggerBuilder) ParseLoggerConfig(config json.RawMessage) (LoggerConfig, error) {
71+
func (StdoutLoggerBuilder) ParseLoggerConfig(config json.RawMessage) (audit.LoggerConfig, error) {
7172
grpcLogger.Warningf("Config value %v ignored, "+
72-
"StdOutLogger doesn't support custom configs", string(config))
73+
"StdoutLogger doesn't support custom configs", string(config))
7374
return &StdoutLoggerConfig{}, nil
7475
}
7576

76-
func convertEvent(event *Event) StdoutEvent {
77+
func convertEvent(event *audit.Event) StdoutEvent {
7778
return StdoutEvent{
7879
FullMethodName: event.FullMethodName,
7980
Principal: event.Principal,
Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,29 +16,31 @@
1616
*
1717
*/
1818

19-
package audit
19+
package stdout
2020

2121
import (
2222
"bytes"
2323
"encoding/json"
2424
"log"
2525
"testing"
2626
"time"
27+
28+
"google.golang.org/grpc/authz/audit"
2729
)
2830

2931
var (
3032
content = json.RawMessage(`{"name": "conf", "val": "to be ignored"}`)
31-
builder = &StdOutLoggerBuilder{}
33+
builder = &StdoutLoggerBuilder{}
3234
config, _ = builder.ParseLoggerConfig(content)
3335
auditLogger = builder.Build(config)
3436
)
3537

36-
func TestStdOutLogger_Log(t *testing.T) {
38+
func TestStdoutLogger_Log(t *testing.T) {
3739
var buf bytes.Buffer
3840
log.SetOutput(&buf)
3941
log.SetFlags(0)
4042

41-
event := &Event{PolicyName: "test policy", Principal: "test principal"}
43+
event := &audit.Event{PolicyName: "test policy", Principal: "test principal"}
4244
auditLogger.Log(event)
4345

4446
expected := `{"fullMethodName":"","principal":"test principal","policyName":"test policy","matchedRule":"","authorized":false`
@@ -47,12 +49,12 @@ func TestStdOutLogger_Log(t *testing.T) {
4749
}
4850
}
4951

50-
func TestStdOutLogger_LogAllEventFields(t *testing.T) {
52+
func TestStdoutLogger_LogAllEventFields(t *testing.T) {
5153
var buf bytes.Buffer
5254
log.SetOutput(&buf)
5355
log.SetFlags(0)
5456

55-
event := &Event{
57+
event := &audit.Event{
5658
FullMethodName: "/helloworld.Greeter/SayHello",
5759
Principal: "spiffe://example.org/ns/default/sa/default/backend",
5860
PolicyName: "example-policy",

0 commit comments

Comments
 (0)