ves-io-schema-app_setting-API-Create
On This Page:
Examples of creating app_setting
Usecase:
Create app_setting in namespace documentation that uses app_type bookinfo. There can only be one app_setting in a namespace.
Request using vesctl:
vesctl configuration create app_setting -i app_setting.yaml
where file app_setting.yaml has following contents (app_setting.CreateRequest):
RequestJSON:
{
"metadata": {
"name": "app-setting",
"namespace": "documentation"
},
"spec": {
"app_type_settings": [
{
"app_type_ref": [
{
"kind": "app_type",
"tenant": "acmecorp",
"namespace": "shared",
"name": "bookinfo"
}
],
"timeseries_analyses_setting": {
"metric_selectors": [
{
"metrics_source": "VIRTUAL_HOSTS",
"metric": [
"REQUEST_RATE"
]
}
]
}
}
]
}
}
vesctl yaml response:
ResponseJSON:
{
"metadata": {
"name": "app-setting",
"namespace": "documentation",
"labels": {},
"annotations": {},
"description": "",
"disable": false
},
"system_metadata": {
"uid": "b6bcd274-2b48-4744-9fbf-9c9643910032",
"creation_timestamp": "2023-09-08T16:01:24.187824Z",
"deletion_timestamp": null,
"modification_timestamp": null,
"initializers": null,
"finalizers": [],
"tenant": "acmecorp",
"creator_class": "examplesvc",
"creator_id": "examplesvc",
"object_index": 0,
"owner_view": null,
"labels": {}
},
"spec": {
"app_type_refs": [],
"anomaly_types": [],
"app_type_settings": [
{
"app_type_ref": [
{
"kind": "app_type",
"uid": "ffffffff-ffff-ffff-ffff-ffffffffffff",
"tenant": "acmecorp",
"namespace": "shared",
"name": "bookinfo"
}
],
"timeseries_analyses_setting": {
"metric_selectors": [
{
"metrics_source": "VIRTUAL_HOSTS",
"metric": [
"REQUEST_RATE"
]
}
]
},
"business_logic_markup_setting": null,
"user_behavior_analysis_setting": null
}
]
}
}
Request using curl:
curl -X 'POST' -d '{"metadata":{"name":"app-setting","namespace":"documentation"},"spec":{"app_type_settings":[{"app_type_ref":[{"kind":"app_type","tenant":"acmecorp","namespace":"shared","name":"bookinfo"}],"timeseries_analyses_setting":{"metric_selectors":[{"metrics_source":"VIRTUAL_HOSTS","metric":["REQUEST_RATE"]}]}}]}}' -H 'Content-Type: application/json' -H 'X-Volterra-Useragent: v1/pgm=_var_folders_2__8qnt6fwd5dvglr1xqq6l8b7w0000gp_T_go-build2547058132_b001_apidocs.test/host=C02FN35BMD6R/svc=S:examplesvc/site=mytestce01' 'https://acmecorp.console.ves.volterra.io/api/config/namespaces/documentation/app_settings'
curl response:
HTTP/1.1 200 OK
Content-Length: 1316
Content-Type: application/json
Date: Fri, 08 Sep 2023 16:01:24 GMT
Vary: Accept-Encoding
{
"metadata": {
"name": "app-setting",
"namespace": "documentation",
"labels": {
},
"annotations": {
},
"description": "",
"disable": false
},
"system_metadata": {
"uid": "b6bcd274-2b48-4744-9fbf-9c9643910032",
"creation_timestamp": "2023-09-08T16:01:24.187824Z",
"deletion_timestamp": null,
"modification_timestamp": null,
"initializers": null,
"finalizers": [
],
"tenant": "acmecorp",
"creator_class": "examplesvc",
"creator_id": "examplesvc",
"object_index": 0,
"owner_view": null,
"labels": {
}
},
"spec": {
"app_type_refs": [
],
"anomaly_types": [
],
"app_type_settings": [
{
"app_type_ref": [
{
"kind": "app_type",
"uid": "ffffffff-ffff-ffff-ffff-ffffffffffff",
"tenant": "acmecorp",
"namespace": "shared",
"name": "bookinfo"
}
],
"timeseries_analyses_setting": {
"metric_selectors": [
{
"metrics_source": "VIRTUAL_HOSTS",
"metric": [
"REQUEST_RATE"
]
}
]
},
"business_logic_markup_setting": null,
"user_behavior_analysis_setting": null
}
]
}
}