监控:用户分析¶
目的¶
UA应在用户级别(而不是请求级别,如普通监视)提供有关GeoNode资源使用情况的信息。
请求¶
GeoNode上每天的唯一会话总数(不包括OWS请求)。这提供了河段的基本视图。
来自所有类型的所有会话(OWS和非OWS)的请求
GET /monitoring/api/metric_data/request.users/?last=(x*86400)&interval=86400&group_by=label
与OWS无关
GET /monitoring/api/metric_data/request.users/?
last=(x*86400)&interval=86400&group_by=label&event_type=other
仅与OWS相关
GET /monitoring/api/metric_data/request.users/?
last=(x*86400)&interval=86400&group_by=label&event_type=OWS:ALL
{ "data": { "input_valid_from": "2018-07-11T15:41:06.419Z", "input_valid_to": "2018-07-12T15:41:06.419Z", "data": [ { "valid_from": "2018-07-11T15:41:06.419Z", "data": [ { "samples_count": 82, "val": 9, "min": "0.0000", "max": "24.0000", "sum": "82.0000", "metric_count": 16 } ], "valid_to": "2018-07-12T15:41:06.419Z" } ], "metric": "request.users", "interval": 86400.0, "type": "value", "axis_label": "Count", "label": null } }
每个URL的唯一会话总数(不包括OWS请求)。让我看看有多少用户访问图层页面或地图页面
获取URL的唯一跟踪ID数
GET /monitoring/api/metric_data/request.users/?
last=(x*86400)&interval=86400&group_by=resource_on_label&resource_type=url&event_type=other
{ "data": { "input_valid_from": "2018-07-11T15:39:25.126Z", "input_valid_to": "2018-07-12T15:39:25.126Z", "data": [ { "valid_from": "2018-07-11T15:39:25.126Z", "data": [ { "resource": { "type": "url", "name": "/layers/", "id": 15 }, "metric_count": 2, "val": 2, "min": "1.0000", "max": "1.0000", "sum": "2.0000", "samples_count": 2 }, { "resource": { "type": "url", "name": "/", "id": 16 }, "metric_count": 2, "val": 2, "min": "1.0000", "max": "1.0000", "sum": "2.0000", "samples_count": 2 }, { "resource": { "type": "url", "name": "/documents/", "id": 21 }, "metric_count": 1, "val": 1, "min": "1.0000", "max": "1.0000", "sum": "1.0000", "samples_count": 1 } ], "valid_to": "2018-07-12T15:39:25.126Z" } ], "metric": "request.users", "interval": 86400.0, "type": "value", "axis_label": "Count", "label": null } }
每个EVENT_TYPE的唯一会话总数:例如,资源页面的唯一访问总数(独立于资源类型和ID)
要获取请求数,请执行以下操作
GET /monitoring/api/metric_data/request.users/?
last=86400&interval=86400&group_by=event_type
要获取唯一跟踪ID的数量,请执行以下操作
GET /monitoring/api/metric_data/request.users/?
last=86400&interval=86400&group_by=event_type_on_label
要获取给定资源类型上每个EVENT_TYPE的唯一跟踪ID数,请执行以下操作
GET /monitoring/api/metric_data/request.users/?
last=86400&interval=86400&group_by=event_type_on_label&resource_type=url
{ "data": { "input_valid_from": "2018-07-11T17:54:41.467Z", "input_valid_to": "2018-07-12T17:54:41.467Z", "data": [ { "valid_from": "2018-07-11T17:54:41.467Z", "data": [ { "samples_count": 5, "event_type": "all", "val": 2, "min": "1.0000", "max": "1.0000", "sum": "5.0000", "metric_count": 5 }, { "samples_count": 5, "event_type": "other", "val": 2, "min": "1.0000", "max": "1.0000", "sum": "5.0000", "metric_count": 5 }, { "samples_count": 5, "event_type": "view", "val": 2, "min": "1.0000", "max": "1.0000", "sum": "5.0000", "metric_count": 5 } ], "valid_to": "2018-07-12T17:54:41.467Z" } ], "metric": "request.users", "interval": 86400.0, "type": "value", "axis_label": "Count", "label": null } }
要获取特定资源类型上每个事件类型的唯一用户数,请执行以下操作
GET /monitoring/api/metric_data/request.users/?
last=86400&interval=86400&group_by=event_type_on_user&resource_type=url
{ "data": { "input_valid_from": "2018-07-11T17:54:41.467Z", "input_valid_to": "2018-07-12T17:54:41.467Z", "data": [ { "valid_from": "2018-07-11T17:54:41.467Z", "data": [ { "samples_count": 5, "event_type": "all", "val": 2, "min": "1.0000", "max": "1.0000", "sum": "5.0000", "metric_count": 5 }, { "samples_count": 5, "event_type": "other", "val": 1, "min": "1.0000", "max": "1.0000", "sum": "5.0000", "metric_count": 5 }, { "samples_count": 5, "event_type": "view", "val": 1, "min": "1.0000", "max": "1.0000", "sum": "5.0000", "metric_count": 5 } ], "valid_to": "2018-07-12T17:54:41.467Z" } ], "metric": "request.users", "interval": 86400.0, "type": "value", "axis_label": "Count", "label": null } }
每个EVENT_TYPE和单个资源的唯一会话总数:让我看看这一天访问最多的地图页面是什么,或者下载最多的文档是什么,请求最多的OWS层是什么,等等。
访问次数最多的资源列表 url 类型
GET /monitoring/api/metric_data/request.users/?
last=86400&interval=86400&group_by=resource_on_label&resource_type=url
每个资源的唯一跟踪ID列表(可以使用以下命令缩小到特定资源类型 resource_type 值)。
GET /monitoring/api/metric_data/request.users/?
last=86400&interval=86400&group_by=resource_on_label
{ "data": { "input_valid_from": "2018-07-11T17:56:49.381Z", "input_valid_to": "2018-07-12T17:56:49.381Z", "data": [ { "valid_from": "2018-07-11T17:56:49.381Z", "data": [ { "resource": { "type": "", "name": "", "id": 1 }, "metric_count": 16, "val": 9, "min": "0.0000", "max": "24.0000", "sum": "82.0000", "samples_count": 82 }, { "resource": { "type": "layer", "name": "geonode:ne_50m_admin_0_countries_lakes", "id": 2 }, "metric_count": 4, "val": 3, "min": "0.0000", "max": "2.0000", "sum": "3.0000", "samples_count": 3 }, { "resource": { "type": "layer", "name": "geonode:world_iso2", "id": 12 }, "metric_count": 4, "val": 2, "min": "0.0000", "max": "5.0000", "sum": "8.0000", "samples_count": 8 }, { "resource": { "type": "url", "name": "/layers/", "id": 15 }, "metric_count": 2, "val": 2, "min": "1.0000", "max": "1.0000", "sum": "2.0000", "samples_count": 2 }, { "resource": { "type": "url", "name": "/", "id": 16 }, "metric_count": 2, "val": 2, "min": "1.0000", "max": "1.0000", "sum": "2.0000", "samples_count": 2 }, { "resource": { "type": "url", "name": "/documents/", "id": 21 }, "metric_count": 1, "val": 1, "min": "1.0000", "max": "1.0000", "sum": "1.0000", "samples_count": 1 }, { "resource": { "type": "document", "name": "GeoServer Configuration.pdf", "id": 22 }, "metric_count": 1, "val": 1, "min": "5.0000", "max": "5.0000", "sum": "5.0000", "samples_count": 5 } ], "valid_to": "2018-07-12T17:56:49.381Z" } ], "metric": "request.users", "interval": 86400.0, "type": "value", "axis_label": "Count", "label": null } }
每个event_type和单个资源的唯一访问者(用户)总数:让我看看这一天有多少用户访问了地图页面,或者有多少用户下载了某个资源等。
给定EVENT_TYPE一年内的唯一访问者(用户数)数:
GET /monitoring/api/metric_data/request.users/
?valid_from=2019-01-01+00:00:00&valid_to=2019-12-31+23:59:59
&interval=31536000&event_type=upload&group_by=user
给定时间间隔内给定resource_type的唯一访问者(用户数)数。
GET /monitoring/api/metric_data/request.users/
?valid_from=2019-01-01+00:00:00&valid_to=2019-12-31+23:59:59
&interval=31536000&resource_type=layer&group_by=user
响应应如下所示:
{ "data": { "input_valid_from": "2019-01-01T00:00:00Z", "input_valid_to": "2019-12-31T23:59:59Z", "data": [ { "valid_from": "2019-01-01T00:00:00Z", "data": [ { "samples_count": 3, "val": 2, "min": "1.0000", "max": "2.0000", "sum": "3.0000", "metric_count": 2 } ], "valid_to": "2020-01-01T00:00:00Z" } ], "metric": "request.users", "interval": 31536000, "type": "value", "axis_label": "Count", "label": null } }
给定用户的唯一跟踪ID/会话总数。
匿名用户的会话计数:
GET /monitoring/api/metric_data/request.users/
?valid_from=2019-01-01+00:00:00&valid_to=2019-12-31+23:59:59
&interval=31536000&group_by=label&user=AnonymousUser
{ "data": { "input_valid_from": "2019-01-01T00:00:00Z", "input_valid_to": "2019-12-31T23:59:59Z", "data": [ { "valid_from": "2019-01-01T00:00:00Z", "data": [ { "samples_count": 5, "val": 5, "min": "1.0000", "max": "1.0000", "sum": "5.0000", "metric_count": 5 } ], "valid_to": "2020-01-01T00:00:00Z" } ], "metric": "request.users", "interval": 31536000, "type": "value", "axis_label": "Count", "label": null } }
每个用户的唯一跟踪ID/会话总数。
每个用户的会话计数:
GET /monitoring/api/metric_data/request.users/
?valid_from=2019-01-01+00:00:00&valid_to=2019-12-31+23:59:59
&interval=31536000&group_by=user_on_label
{ "data": { "input_valid_from": "2019-01-01T00:00:00Z", "input_valid_to": "2019-12-31T23:59:59Z", "data": [ { "valid_from": "2019-01-01T00:00:00Z", "data": [ { "samples_count": 5, "val": 5, "min": "1.0000", "max": "1.0000", "sum": "5.0000", "user": "AnonymousUser", "metric_count": 5 }, { "samples_count": 16, "val": 3, "min": "1.0000", "max": "2.0000", "sum": "16.0000", "user": "admin", "metric_count": 14 }, { "samples_count": 4, "val": 1, "min": "1.0000", "max": "1.0000", "sum": "4.0000", "user": "user1_username", "metric_count": 4 } ], "valid_to": "2020-01-01T00:00:00Z" } ], "metric": "request.users", "interval": 31536000, "type": "value", "axis_label": "Count", "label": null } }对每个对层执行某些操作的用户的会话计数:
GET /monitoring/api/metric_data/request.users/
?valid_from=2019-01-01+00:00:00&valid_to=2019-12-31+23:59:59
&interval=31536000&resource_type=layer&group_by=user_on_label
{ "data": { "input_valid_from": "2019-01-01T00:00:00Z", "input_valid_to": "2019-12-31T23:59:59Z", "data": [ { "valid_from": "2019-01-01T00:00:00Z", "data": [ { "samples_count": 2, "val": 1, "min": "2.0000", "max": "2.0000", "sum": "2.0000", "user": "admin", "metric_count": 1 }, { "samples_count": 1, "val": 1, "min": "1.0000", "max": "1.0000", "sum": "1.0000", "user": "user1_username", "metric_count": 1 } ], "valid_to": "2020-01-01T00:00:00Z" } ], "metric": "request.users", "interval": 31536000, "type": "value", "axis_label": "Count", "label": null } }
每个受监视资源的唯一用户总数。
GET /monitoring/api/metric_data/request.users/
?last=31536000&interval=31536000&group_by=resource_on_user
{ "data": { "input_valid_from": "2018-09-10T14:15:39.454Z", "input_valid_to": "2019-09-10T14:15:39.454Z", "data": [ { "valid_from": "2018-09-10T14:15:39.454Z", "data": [ { "resource": { "href": "/", "type": "url", "name": "/", "id": 1 }, "metric_count": 36, "val": 4, "max": "2.0000", "sum": "35.0000", "min": "0.0000", "samples_count": 35 }, { "resource": { "href": "/maps/", "type": "url", "name": "/maps/", "id": 3 }, "metric_count": 3, "val": 2, "max": "1.0000", "sum": "3.0000", "min": "1.0000", "samples_count": 3 }, { "resource": { "href": "", "type": "layer", "name": "geonode:railways", "id": 4 }, "metric_count": 5, "val": 2, "max": "2.0000", "sum": "3.0000", "min": "0.0000", "samples_count": 3 }, { "resource": { "href": "/layers/", "type": "url", "name": "/layers/", "id": 2 }, "metric_count": 4, "val": 1, "max": "1.0000", "sum": "4.0000", "min": "1.0000", "samples_count": 4 }, { "resource": { "href": "/documents/2", "type": "document", "name": "test_doc_1.txt", "id": 5 }, "metric_count": 2, "val": 1, "max": "2.0000", "sum": "4.0000", "min": "2.0000", "samples_count": 4 }, { "resource": { "href": "/maps/3", "type": "map", "name": "test_map", "id": 6 }, "metric_count": 1, "val": 1, "max": "1.0000", "sum": "1.0000", "min": "1.0000", "samples_count": 1 }, { "resource": { "href": "", "type": "layer", "name": "geonode:waterways", "id": 7 }, "metric_count": 2, "val": 1, "max": "2.0000", "sum": "2.0000", "min": "0.0000", "samples_count": 2 } ], "valid_to": "2019-09-10T14:15:39.454Z" } ], "metric": "request.users", "interval": 31536000, "type": "value", "axis_label": "Count", "label": null } }
给定时间范围内监视的资源总数。
GET /monitoring/api/metric_data/request.users/
?last=31536000&interval=31536000&group_by=count_on_resource
{ "data": { "input_valid_from": "2018-09-10T14:20:27.335Z", "input_valid_to": "2019-09-10T14:20:27.335Z", "data": [ { "valid_from": "2018-09-10T14:20:27.335Z", "data": [ { "samples_count": 52, "val": 7, "min": "0.0000", "max": "2.0000", "sum": "52.0000", "metric_count": 53 } ], "valid_to": "2019-09-10T14:20:27.335Z" } ], "metric": "request.users", "interval": 31536000, "type": "value", "axis_label": "Count", "label": null } }