From 11c14e2dc4ec8c4b72d8cd45116c8efcebf44704 Mon Sep 17 00:00:00 2001 From: Michael Hwang Date: Fri, 13 Jul 2018 14:43:39 -0400 Subject: Add logging configuration to spec k8s deployment requires additional details from developer to setup for logging. Change-Id: Ic23e3fa307771179c26ab97d9418fe779bafb01b Issue-ID: DCAEGEN2-550 Signed-off-by: Michael Hwang --- .../dcae-cli-v1/component-spec-schema.json | 15 +++ .../tests/component-spec-logging.json | 114 +++++++++++++++++++++ 2 files changed, 129 insertions(+) create mode 100644 component-json-schemas/tests/component-spec-logging.json diff --git a/component-json-schemas/component-specification/dcae-cli-v1/component-spec-schema.json b/component-json-schemas/component-specification/dcae-cli-v1/component-spec-schema.json index 27d0403..46c2a2a 100644 --- a/component-json-schemas/component-specification/dcae-cli-v1/component-spec-schema.json +++ b/component-json-schemas/component-specification/dcae-cli-v1/component-spec-schema.json @@ -646,6 +646,21 @@ "items": { "type": "string" } + }, + "logging": { + "description": "Component specific details for logging", + "type": "object", + "properties": { + "log_directory": { + "description": "The path in the container where the component writes its logs. If the component is following the EELF requirements, this would be the directory where the four EELF files are being written. (Other logs can be placed in the directory--if their names in '.log', they'll also be sent into ELK.)", + "type": "string" + }, + "alternate_fb_path": { + "description": "By default, the log volume is mounted at /var/log/onap/ in the sidecar container's file system. 'alternate_fb_path' allows overriding the default. Will affect how the log data can be found in the ELK system.", + "type": "string" + } + }, + "additionalProperties": false } }, "required": [ diff --git a/component-json-schemas/tests/component-spec-logging.json b/component-json-schemas/tests/component-spec-logging.json new file mode 100644 index 0000000..6b74050 --- /dev/null +++ b/component-json-schemas/tests/component-spec-logging.json @@ -0,0 +1,114 @@ +{ + "self": { + "version": "0.5.0", + "name": "sandbox.platform.laika", + "description": "Web service used as a stand-alone test DCAE service component", + "component_type": "docker" + }, + "streams": { + "subscribes": [], + "publishes": [ + { + "format": "some.format", + "version": "1.0.0", + "config_key": "pub-foo", + "type": "message router" + }, + { + "format": "some.format", + "version": "1.0.0", + "config_key": "pub-foo", + "type": "http" + } + ] + }, + "services": { + "calls": [], + "provides": [ + { + "route": "/rollcall", + "verb": "GET", + "request": { + "format": "sandbox.platform.any", + "version": "0.1.0" + }, + "response": { + "format": "sandbox.platform.laika.rollcall.response", + "version": "0.1.0" + } + }, + { + "route": "/identity", + "verb": "POST", + "request": { + "format": "sandbox.platform.laika.identity.request", + "version": "0.1.0" + }, + "response": { + "format": "sandbox.platform.laika.identity.response", + "version": "0.1.0" + } + }, + { + "route": "/health", + "verb": "GET", + "request": { + "format": "sandbox.platform.any", + "version": "0.1.0" + }, + "response": { + "format": "sandbox.platform.laika.health", + "version": "0.1.0" + } + } + ] + }, + "parameters": [ + { + "name": "threshold", + "description": "Some fake threshold", + "type": "number", + "value": 2000 + }, + { + "name": "some-target-number", + "description": "Some fake target", + "type": "number", + "value": 10000, + "constraints": [ + { + "greater_or_equal": 1 + }, + { + "less_than": 100000 + }] + }, + { + "name": "magic-word", + "description": "Some magic word", + "type": "string", + "value": "requirements", + "constraints": [ + { + "valid_values": ["rally", "user story"] + }] + } + ], + "auxilary": { + "healthcheck": { + "type": "http", + "endpoint": "/foo" + }, + "ports": ["8080:8080"], + "logging": { + "log_directory": "/tmp/yo", + "alternate_fb_path": "/tmp/path" + } + }, + "artifacts": [ + { + "uri": "some docker image path", + "type": "docker image" + } + ] +} -- cgit 1.2.3-korg