summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Hwang <mhwang@research.att.com>2018-07-13 14:43:39 -0400
committerMichael Hwang <mhwang@research.att.com>2018-07-13 14:51:10 -0400
commit11c14e2dc4ec8c4b72d8cd45116c8efcebf44704 (patch)
tree843f20ee369080f4c1a95b829a563d5561232c30
parentf1455b0b438dfd7dba1ced24d8dc2f5fd58c12e0 (diff)
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 <mhwang@research.att.com>
-rw-r--r--component-json-schemas/component-specification/dcae-cli-v1/component-spec-schema.json15
-rw-r--r--component-json-schemas/tests/component-spec-logging.json114
2 files changed, 129 insertions, 0 deletions
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/<component_type> 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"
+ }
+ ]
+}