diff options
author | Dylan Griffith <dyl.griffith@gmail.com> | 2019-04-10 09:38:27 +0300 |
---|---|---|
committer | James Lopez <james@gitlab.com> | 2019-04-10 09:38:27 +0300 |
commit | c239bfcb1750794ec1bf8172dfa380dea64fe4c1 (patch) | |
tree | 2e0a95a1a741e0dc76e5f166cc29a65549aaa41e /lib/gitlab/kubernetes | |
parent | b5af30bba6a7ffdd4b054fa9c8c9b42dd91a51d7 (diff) |
Add more info logging to cluster apps
Log events so that it's easy to see
when different requests are starting.
Diffstat (limited to 'lib/gitlab/kubernetes')
-rw-r--r-- | lib/gitlab/kubernetes/namespace.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/gitlab/kubernetes/namespace.rb b/lib/gitlab/kubernetes/namespace.rb index 919f19c86d7..8a3bea95a04 100644 --- a/lib/gitlab/kubernetes/namespace.rb +++ b/lib/gitlab/kubernetes/namespace.rb @@ -19,11 +19,40 @@ module Gitlab def create! resource = ::Kubeclient::Resource.new(metadata: { name: name }) + log_event(:begin_create) @client.create_namespace(resource) end def ensure_exists! exists? || create! + rescue ::Kubeclient::HttpError => error + log_create_failed(error) + raise + end + + private + + def log_create_failed(error) + logger.error({ + exception: error.class.name, + status_code: error.error_code, + namespace: name, + class_name: self.class.name, + event: :failed_to_create_namespace, + message: error.message + }) + end + + def log_event(event) + logger.info( + namespace: name, + class_name: self.class.name, + event: event + ) + end + + def logger + @logger ||= Gitlab::Kubernetes::Logger.build end end end |