6.12.1.1.4.4. Running profiling against Liberty Keystone (UUID tokens, cache turned on)

6.12.1.1.4.4.1. Parameters

Parameter name Value
OpenStack release Liberty
Cache on
Token type UUID
Environment characteristics Single node

6.12.1.1.4.4.2. Endpoint list request stats

Control plane request overlook

Metric Value
Total (*) Keystone DB queries count 44
Total (*) Keystone DB queries time spent, ms 465
Infrastructure (SELECT 1) Keystone DB queries count 22
Infrastructure (SELECT 1) Keystone DB queries time spent, ms 230
Real Keystone DB queries count 22
Real Keystone DB queries time spent, ms 235
SELECT Keystone DB queries count 20
SELECT Keystone DB queries time spent, ms 204
INSERT Keystone DB queries count 2
INSERT Keystone DB queries time spent, ms 31

Note

(*) OSprofiler uses specific SQLalchemy cursor events to track what’s going on with the DB layer. This number includes non-real DB requests “SELECT 1”, processed by SQLalchemy itself to make sure that connection to the database is still in place.

Keystone DB queries outliers

DB query Time spent, ms

SELECT user.id AS user_id, user.name AS user_name, user.domain_id AS user_domain_id, user.password AS user_password, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user WHERE user.id = %s


5

SELECT assignment.type AS assignment_type, assignment.actor_id AS assignment_actor_id, assignment.target_id AS assignment_target_id, assignment.role_id AS assignment_role_id, assignment.inherited AS assignment_inherited FROM assignment WHERE assignment.type = %s AND assignment.actor_id = %s AND assignment.target_id = %s


18

SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra FROM endpoint


15

SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra, service_1.id AS service_1_id, service_1.type AS service_1_type, service_1.enabled AS service_1_enabled, service_1.extra AS service_1_extra FROM endpoint LEFT OUTER JOIN service AS service_1 ON service_1.id = endpoint.service_id WHERE endpoint.enabled = true


25

SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra FROM service WHERE service.id = %s


13

Keystone DB queries with multi JOINs inside

DB query Time spent, ms

Cached operations stats

Cached operations args kwargs Times used
_validate_token <keystone.token.provider.Manager object at 0x7ff1cde3f710>, ‘0038b99a5d8b4888b54b41d5799f56a2’   9
get_user_by_name <keystone.identity.core.Manager object at 0x7ff1ce146750>, u’admin’, ‘default’   2
_get_token <keystone.token.persistence.core.PersistenceManager object at 0x7ff1cc023210>, ‘0038b99a5d8b4888b54b41d5799f56a2’   1
_get_revoke_tree <keystone.contrib.revoke.core.Manager object at 0x7ff1cde7e1d0>,   10
get_role <keystone.assignment.core.RoleManager object at 0x7ff1cde7d210>, u‘68e61c80e05244f2ab9af0a9e2e0320a’   2
get_project <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u‘741271ef2a554242af037d66d6682e3f’   4
get_domain <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u’default’   4
get_project_by_name <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u’admin’, ‘default’   2

6.12.1.1.4.4.3. Server create request stats

Note

This control plane request numbers were not collected yet due to environmental issues.

6.12.1.1.4.4.4. Service list request stats

Control plane request overlook

Metric Value
Total (*) Keystone DB queries count 36
Total (*) Keystone DB queries time spent, ms 227
Infrastructure (SELECT 1) Keystone DB queries count 18
Infrastructure (SELECT 1) Keystone DB queries time spent, ms 101
Real Keystone DB queries count 18
Real Keystone DB queries time spent, ms 126
SELECT Keystone DB queries count 16
SELECT Keystone DB queries time spent, ms 108
INSERT Keystone DB queries count 2
INSERT Keystone DB queries time spent, ms 18

Note

(*) OSprofiler uses specific SQLalchemy cursor events to track what’s going on with the DB layer. This number includes non-real DB requests “SELECT 1”, processed by SQLalchemy itself to make sure that connection to the database is still in place.

Keystone DB queries outliers

DB query Time spent, ms

SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra FROM service WHERE service.id = %s


13

SELECT project.id AS project_id, project.name AS project_name, project.domain_id AS project_domain_id, project.description AS project_description, project.enabled AS project_enabled, project.extra AS project_extra, project.parent_id AS project_parent_id, project.is_domain AS project_is_domain FROM project WHERE project.name = %s AND project.domain_id = %s


12

SELECT user.id AS user_id, user.name AS user_name, user.domain_id AS user_domain_id, user.password AS user_password, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user WHERE user.id = %s


5

SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra, service_1.id AS service_1_id, service_1.type AS service_1_type, service_1.enabled AS service_1_enabled, service_1.extra AS service_1_extra FROM endpoint LEFT OUTER JOIN service AS service_1 ON service_1.id = endpoint.service_id WHERE endpoint.enabled = true


16

SELECT assignment.type AS assignment_type, assignment.actor_id AS assignment_actor_id, assignment.target_id AS assignment_target_id, assignment.role_id AS assignment_role_id, assignment.inherited AS assignment_inherited FROM assignment WHERE assignment.type = %s AND assignment.actor_id = %s AND assignment.target_id = %s


18

SELECT group.id AS group_id, group.name AS group_name, group.domain_id AS group_domain_id, group.description AS group_description, group.extra AS group_extra FROM group INNER JOIN user_group_membership ON group.id = user_group_membership.group_id WHERE user_group_membership.user_id = %s


13

SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra FROM endpoint


15

Keystone DB queries with multi JOINs inside

DB query Time spent, ms

Cached operations stats

Cached operations args kwargs Times used
get_user_by_name <keystone.identity.core.Manager object at 0x7ff1ce146750>, u’admin’, ‘default’   1
get_project_by_name <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u’admin’, ‘default’   1
_get_revoke_tree <keystone.contrib.revoke.core.Manager object at 0x7ff1cde7e1d0>,   1
_get_token <keystone.token.persistence.core.PersistenceManager object at 0x7ff1cc0cb890>, ‘1c61ea5b4b4c4583aa9c394631cf458b’   1
get_role <keystone.assignment.core.RoleManager object at 0x7ff1cde7d210>, u‘68e61c80e05244f2ab9af0a9e2e0320a’   1
get_project <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u‘741271ef2a554242af037d66d6682e3f’   3
get_domain <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u’default’   3

6.12.1.1.4.4.5. Token issue request stats

Control plane request overlook

Metric Value
Total (*) Keystone DB queries count 22
Total (*) Keystone DB queries time spent, ms 107
Infrastructure (SELECT 1) Keystone DB queries count 11
Infrastructure (SELECT 1) Keystone DB queries time spent, ms 45
Real Keystone DB queries count 11
Real Keystone DB queries time spent, ms 62
SELECT Keystone DB queries count 10
SELECT Keystone DB queries time spent, ms 55
INSERT Keystone DB queries count 1
INSERT Keystone DB queries time spent, ms 7

Note

(*) OSprofiler uses specific SQLalchemy cursor events to track what’s going on with the DB layer. This number includes non-real DB requests “SELECT 1”, processed by SQLalchemy itself to make sure that connection to the database is still in place.

Keystone DB queries outliers

DB query Time spent, ms

SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra FROM service WHERE service.id = %s


13

SELECT project.id AS project_id, project.name AS project_name, project.domain_id AS project_domain_id, project.description AS project_description, project.enabled AS project_enabled, project.extra AS project_extra, project.parent_id AS project_parent_id, project.is_domain AS project_is_domain FROM project WHERE project.name = %s AND project.domain_id = %s


12

SELECT user.id AS user_id, user.name AS user_name, user.domain_id AS user_domain_id, user.password AS user_password, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user WHERE user.id = %s


5

SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra, service_1.id AS service_1_id, service_1.type AS service_1_type, service_1.enabled AS service_1_enabled, service_1.extra AS service_1_extra FROM endpoint LEFT OUTER JOIN service AS service_1 ON service_1.id = endpoint.service_id WHERE endpoint.enabled = true


16

SELECT assignment.type AS assignment_type, assignment.actor_id AS assignment_actor_id, assignment.target_id AS assignment_target_id, assignment.role_id AS assignment_role_id, assignment.inherited AS assignment_inherited FROM assignment WHERE assignment.type = %s AND assignment.actor_id = %s AND assignment.target_id = %s


18

SELECT group.id AS group_id, group.name AS group_name, group.domain_id AS group_domain_id, group.description AS group_description, group.extra AS group_extra FROM group INNER JOIN user_group_membership ON group.id = user_group_membership.group_id WHERE user_group_membership.user_id = %s


13

SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra FROM endpoint


15

Keystone DB queries with multi JOINs inside

DB query Time spent, ms

Cached operations stats

Cached operations args kwargs Times used
get_project <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u‘741271ef2a554242af037d66d6682e3f’   1
get_domain <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u’default’   1

6.12.1.1.4.4.6. User list request stats

Control plane request overlook

Metric Value
Total (*) Keystone DB queries count 26
Total (*) Keystone DB queries time spent, ms 165
Infrastructure (SELECT 1) Keystone DB queries count 13
Infrastructure (SELECT 1) Keystone DB queries time spent, ms 61
Real Keystone DB queries count 13
Real Keystone DB queries time spent, ms 104
SELECT Keystone DB queries count 11
SELECT Keystone DB queries time spent, ms 90
INSERT Keystone DB queries count 2
INSERT Keystone DB queries time spent, ms 14

Note

(*) OSprofiler uses specific SQLalchemy cursor events to track what’s going on with the DB layer. This number includes non-real DB requests “SELECT 1”, processed by SQLalchemy itself to make sure that connection to the database is still in place.

Keystone DB queries outliers

DB query Time spent, ms

SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra FROM service WHERE service.id = %s


13

SELECT project.id AS project_id, project.name AS project_name, project.domain_id AS project_domain_id, project.description AS project_description, project.enabled AS project_enabled, project.extra AS project_extra, project.parent_id AS project_parent_id, project.is_domain AS project_is_domain FROM project WHERE project.name = %s AND project.domain_id = %s


12

SELECT user.id AS user_id, user.name AS user_name, user.domain_id AS user_domain_id, user.password AS user_password, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user WHERE user.id = %s


22

SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra, service_1.id AS service_1_id, service_1.type AS service_1_type, service_1.enabled AS service_1_enabled, service_1.extra AS service_1_extra FROM endpoint LEFT OUTER JOIN service AS service_1 ON service_1.id = endpoint.service_id WHERE endpoint.enabled = true


16

SELECT assignment.type AS assignment_type, assignment.actor_id AS assignment_actor_id, assignment.target_id AS assignment_target_id, assignment.role_id AS assignment_role_id, assignment.inherited AS assignment_inherited FROM assignment WHERE assignment.type = %s AND assignment.actor_id = %s AND assignment.target_id = %s


18

SELECT group.id AS group_id, group.name AS group_name, group.domain_id AS group_domain_id, group.description AS group_description, group.extra AS group_extra FROM group INNER JOIN user_group_membership ON group.id = user_group_membership.group_id WHERE user_group_membership.user_id = %s


13

SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra FROM endpoint


15

Keystone DB queries with multi JOINs inside

DB query Time spent, ms

Keystone cached methods stats

Cached operations args kwargs Times used
get_user_by_name <keystone.identity.core.Manager object at 0x7ff1ce146750>, u’admin’, ‘default’   2
get_project_by_name <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u’admin’, ‘default’   2
_get_revoke_tree <keystone.contrib.revoke.core.Manager object at 0x7ff1cde7e1d0>,   1
_get_token <keystone.token.persistence.core.PersistenceManager object at 0x7ff1d7b6df90>, ‘b7cf92a4467145c888974097112c2c3d’   1
get_role <keystone.assignment.core.RoleManager object at 0x7ff1cde7d210>, u‘68e61c80e05244f2ab9af0a9e2e0320a’   2
get_project <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u‘741271ef2a554242af037d66d6682e3f’   4
get_domain <keystone.resource.core.Manager object at 0x7ff1cdeca190>, u’default’   4