Commit df91e002 authored by Justin Santa Barbara's avatar Justin Santa Barbara

route53 dnsprovider: add more logging

In the aws cloudprovider, we have a custom logger. This adds the same logger to the route53 dnsprovider. We copy the (simple) code in anticipation that the providers are likely to live in separate repos in future.
parent 8911e2a3
...@@ -25,8 +25,10 @@ go_library( ...@@ -25,8 +25,10 @@ go_library(
"//federation/pkg/dnsprovider/providers/aws/route53/stubs:go_default_library", "//federation/pkg/dnsprovider/providers/aws/route53/stubs:go_default_library",
"//federation/pkg/dnsprovider/rrstype:go_default_library", "//federation/pkg/dnsprovider/rrstype:go_default_library",
"//vendor:github.com/aws/aws-sdk-go/aws", "//vendor:github.com/aws/aws-sdk-go/aws",
"//vendor:github.com/aws/aws-sdk-go/aws/request",
"//vendor:github.com/aws/aws-sdk-go/aws/session", "//vendor:github.com/aws/aws-sdk-go/aws/session",
"//vendor:github.com/aws/aws-sdk-go/service/route53", "//vendor:github.com/aws/aws-sdk-go/service/route53",
"//vendor:github.com/golang/glog",
"//vendor:k8s.io/apimachinery/pkg/util/uuid", "//vendor:k8s.io/apimachinery/pkg/util/uuid",
], ],
) )
......
...@@ -20,10 +20,11 @@ package route53 ...@@ -20,10 +20,11 @@ package route53
import ( import (
"io" "io"
"k8s.io/kubernetes/federation/pkg/dnsprovider" "github.com/aws/aws-sdk-go/aws/request"
"github.com/aws/aws-sdk-go/aws/session" "github.com/aws/aws-sdk-go/aws/session"
"github.com/aws/aws-sdk-go/service/route53" "github.com/aws/aws-sdk-go/service/route53"
"github.com/golang/glog"
"k8s.io/kubernetes/federation/pkg/dnsprovider"
) )
const ( const (
...@@ -36,9 +37,29 @@ func init() { ...@@ -36,9 +37,29 @@ func init() {
}) })
} }
// route53HandlerLogger is a request handler for aws-sdk-go that logs route53 requests
func route53HandlerLogger(req *request.Request) {
service := req.ClientInfo.ServiceName
name := "?"
if req.Operation != nil {
name = req.Operation.Name
}
glog.V(4).Infof("AWS request: %s %s", service, name)
}
// newRoute53 creates a new instance of an AWS Route53 DNS Interface. // newRoute53 creates a new instance of an AWS Route53 DNS Interface.
func newRoute53(config io.Reader) (*Interface, error) { func newRoute53(config io.Reader) (*Interface, error) {
// Connect to AWS Route53 - TODO: Do more sophisticated auth // Connect to AWS Route53 - TODO: Do more sophisticated auth
svc := route53.New(session.New()) svc := route53.New(session.New())
// Add our handler that will log requests
svc.Handlers.Sign.PushFrontNamed(request.NamedHandler{
Name: "k8s/logger",
Fn: route53HandlerLogger,
})
return New(svc), nil return New(svc), nil
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment