6.11.1.1.4.8. Running profiling against Mitaka Keystone (UUID tokens, cache turned on)¶
Contents
6.11.1.1.4.8.1. Parameters¶
Parameter name  | 
Value  | 
|---|---|
OpenStack release  | 
Mitaka  | 
Cache  | 
on  | 
Token type  | 
UUID  | 
Environment characteristics  | 
Single node  | 
6.11.1.1.4.8.2. Endpoint list request stats¶
Control plane request overlook
Metric  | 
Value  | 
Total (*) Keystone DB queries count  | 
36  | 
Total (*) Keystone DB queries time spent, ms  | 
365  | 
Infrastructure (SELECT 1) Keystone DB queries count  | 
15  | 
Infrastructure (SELECT 1) Keystone DB queries time spent, ms  | 
158  | 
Real Keystone DB queries count  | 
21  | 
Real Keystone DB queries time spent, ms  | 
207  | 
SELECT Keystone DB queries count  | 
19  | 
SELECT Keystone DB queries time spent, ms  | 
199  | 
INSERT Keystone DB queries count  | 
2  | 
INSERT Keystone DB queries time spent, ms  | 
8  | 
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 local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id  | 
11  | 
SELECT user.id AS user_id, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user WHERE user.id = %(param_1)s  | 
17  | 
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 = %(param_1)s  | 
4  | 
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  | 
5  | 
Keystone DB queries with multi JOINs inside
DB query  | 
Time spent, ms  | 
Keystone cached methods stats
Cache  | 
Cached operations  | 
args  | 
kwargs  | 
Times used  | 
Memcache  | 
get_roles_for_user_and_project  | 
<keystone.assignment.core.Manager object at 0x7fbe19ec8dd0>, u’31d31420a3e349268cd7875aa1825663’, u’f1a058ad00364df29cb819a5478e8884’  | 
2  | 
|
Memcache  | 
_get_token  | 
<keystone.token.persistence.core.PersistenceManager object at 0x7fbe18c510d0>, ‘4826bf1d6cc04e658316a0135d225f32’  | 
1  | 
|
Memcache  | 
get_project  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’f1a058ad00364df29cb819a5478e8884’  | 
2  | 
|
Memcache  | 
get_role  | 
<keystone.assignment.core.RoleManager object at 0x7fbe19d8d190>, u’8272f6d8be65464e94d3be094cf35e4c’  | 
2  | 
|
Memcache  | 
_validate_token  | 
<keystone.token.provider.Manager object at 0x7fbe19d55090>, ‘4826bf1d6cc04e658316a0135d225f32’  | 
8  | 
|
Memcache  | 
get_user_by_name  | 
<keystone.identity.core.Manager object at 0x7fbe1a0e0950>, u’admin’, ‘default’  | 
2  | 
|
Memcache  | 
get_project_by_name  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’admin’, ‘default’  | 
2  | 
|
Memcache  | 
_get_revoke_tree  | 
<keystone.revoke.core.Manager object at 0x7fbe19d9d950>,  | 
9  | 
|
Memcache  | 
get_domain  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’default’  | 
4  | 
6.11.1.1.4.8.3. Server create request stats¶
Control plane request overlook
Metric  | 
Value  | 
Total (*) Keystone DB queries count  | 
22  | 
Total (*) Keystone DB queries time spent, ms  | 
225  | 
Infrastructure (SELECT 1) Keystone DB queries count  | 
8  | 
Infrastructure (SELECT 1) Keystone DB queries time spent, ms  | 
115  | 
Real Keystone DB queries count  | 
14  | 
Real Keystone DB queries time spent, ms  | 
110  | 
SELECT Keystone DB queries count  | 
12  | 
SELECT Keystone DB queries time spent, ms  | 
95  | 
INSERT Keystone DB queries count  | 
2  | 
INSERT Keystone DB queries time spent, ms  | 
15  | 
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 local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id  | 
11  | 
SELECT user.id AS user_id, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user WHERE user.id = %(param_1)s  | 
17  | 
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  | 
24  | 
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 = %(param_1)s  | 
4  | 
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  | 
5  | 
Keystone DB queries with multi JOINs inside
DB query  | 
Time spent, ms  | 
Keystone cached methods stats
Cache  | 
Cached operations  | 
args  | 
kwargs  | 
Times used  | 
Memcache  | 
get_roles_for_user_and_project  | 
<keystone.assignment.core.Manager object at 0x7fbe19ec8dd0>, u’31d31420a3e349268cd7875aa1825663’, u’f1a058ad00364df29cb819a5478e8884’  | 
3  | 
|
Memcache  | 
get_project  | 
<keystone.resource.core.Manager object at 0x7fbe19db7090>, u’f1a058ad00364df29cb819a5478e8884’  | 
1  | 
|
Memcache  | 
get_domain  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’default’  | 
4  | 
|
Memcache  | 
get_project  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’f1a058ad00364df29cb819a5478e8884’  | 
2  | 
|
Memcache  | 
get_role  | 
<keystone.assignment.core.RoleManager object at 0x7fbe19d8d190>, u’8272f6d8be65464e94d3be094cf35e4c’  | 
3  | 
|
Memcache  | 
_get_token  | 
<keystone.token.persistence.core.PersistenceManager object at 0x7fbe19c59bd0>, ‘428e793676454d04a9ea2fec753c35b1’  | 
2  | 
|
Memcache  | 
get_user  | 
<keystone.identity.core.Manager object at 0x7fbe1a0e0950>, u’31d31420a3e349268cd7875aa1825663’  | 
1  | 
|
Memcache  | 
get_user_by_name  | 
<keystone.identity.core.Manager object at 0x7fbe1a0e0950>, u’admin’, ‘default’  | 
2  | 
|
Memcache  | 
get_domain  | 
<keystone.resource.core.Manager object at 0x7fbe19db7090>, u’default’  | 
2  | 
|
Memcache  | 
get_project_by_name  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’admin’, ‘default’  | 
2  | 
|
Memcache  | 
_get_revoke_tree  | 
<keystone.revoke.core.Manager object at 0x7fbe19d9d950>,  | 
3  | 
|
Memcache  | 
_validate_token  | 
<keystone.token.provider.Manager object at 0x7fbe19d55090>, ‘18d75ba7355d4a8684a5d5658d005f1f’  | 
1  | 
6.11.1.1.4.8.4. Service list request stats¶
Control plane request overlook
Metric  | 
Value  | 
Total (*) Keystone DB queries count  | 
20  | 
Total (*) Keystone DB queries time spent, ms  | 
131  | 
Infrastructure (SELECT 1) Keystone DB queries count  | 
7  | 
Infrastructure (SELECT 1) Keystone DB queries time spent, ms  | 
48  | 
Real Keystone DB queries count  | 
13  | 
Real Keystone DB queries time spent, ms  | 
83  | 
SELECT Keystone DB queries count  | 
11  | 
SELECT Keystone DB queries time spent, ms  | 
74  | 
INSERT Keystone DB queries count  | 
2  | 
INSERT Keystone DB queries time spent, ms  | 
9  | 
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 local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id  | 
11  | 
SELECT user.id AS user_id, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user WHERE user.id = %(param_1)s  | 
17  | 
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  | 
24  | 
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 = %(param_1)s  | 
4  | 
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  | 
5  | 
Keystone DB queries with multi JOINs inside
DB query  | 
Time spent, ms  | 
Keystone cached methods stats
Cache  | 
Cached operations  | 
args  | 
kwargs  | 
Times used  | 
Memcache  | 
get_roles_for_user_and_project  | 
<keystone.assignment.core.Manager object at 0x7fbe19ec8dd0>, u’31d31420a3e349268cd7875aa1825663’, u’f1a058ad00364df29cb819a5478e8884’  | 
2  | 
|
Memcache  | 
_get_token  | 
<keystone.token.persistence.core.PersistenceManager object at 0x7fbe1888aad0>, ‘6982459b63f647ed9210bd0ce32f8e95’  | 
1  | 
|
Memcache  | 
get_project  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’f1a058ad00364df29cb819a5478e8884’  | 
2  | 
|
Memcache  | 
get_role  | 
<keystone.assignment.core.RoleManager object at 0x7fbe19d8d190>, u’8272f6d8be65464e94d3be094cf35e4c’  | 
2  | 
|
Memcache  | 
get_user_by_name  | 
<keystone.identity.core.Manager object at 0x7fbe1a0e0950>, u’admin’, ‘default’  | 
2  | 
|
Memcache  | 
get_project_by_name  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’admin’, ‘default’  | 
2  | 
|
Memcache  | 
_get_revoke_tree  | 
<keystone.revoke.core.Manager object at 0x7fbe19d9d950>,  | 
1  | 
|
Memcache  | 
get_domain  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’default’  | 
4  | 
6.11.1.1.4.8.5. Token issue request stats¶
Control plane request overlook
Metric  | 
Value  | 
Total (*) Keystone DB queries count  | 
9  | 
Total (*) Keystone DB queries time spent, ms  | 
114  | 
Infrastructure (SELECT 1) Keystone DB queries count  | 
3  | 
Infrastructure (SELECT 1) Keystone DB queries time spent, ms  | 
41  | 
Real Keystone DB queries count  | 
6  | 
Real Keystone DB queries time spent, ms  | 
73  | 
SELECT Keystone DB queries count  | 
5  | 
SELECT Keystone DB queries time spent, ms  | 
67  | 
INSERT Keystone DB queries count  | 
1  | 
INSERT Keystone DB queries time spent, ms  | 
6  | 
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 local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id  | 
11  | 
SELECT user.id AS user_id, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user WHERE user.id = %(param_1)s  | 
20  | 
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  | 
24  | 
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 = %(param_1)s  | 
4  | 
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  | 
5  | 
Keystone DB queries with multi JOINs inside
DB query  | 
Time spent, ms  | 
Keystone cached methods stats
Cache  | 
Cached operations  | 
args  | 
kwargs  | 
Times used  | 
Memcache  | 
get_roles_for_user_and_project  | 
<keystone.assignment.core.Manager object at 0x7fbe19ec8dd0>, u’31d31420a3e349268cd7875aa1825663’, u’f1a058ad00364df29cb819a5478e8884’  | 
1  | 
|
Memcache  | 
get_project  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’f1a058ad00364df29cb819a5478e8884’  | 
1  | 
|
Memcache  | 
get_role  | 
<keystone.assignment.core.RoleManager object at 0x7fbe19d8d190>, u’8272f6d8be65464e94d3be094cf35e4c’  | 
1  | 
|
Memcache  | 
get_user_by_name  | 
<keystone.identity.core.Manager object at 0x7fbe1a0e0950>, u’admin’, ‘default’  | 
1  | 
|
Memcache  | 
get_project_by_name  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’admin’, ‘default’  | 
1  | 
|
Memcache  | 
get_domain  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’default’  | 
2  | 
6.11.1.1.4.8.6. User list request stats¶
Control plane request overlook
Metric  | 
Value  | 
Total (*) Keystone DB queries count  | 
30  | 
Total (*) Keystone DB queries time spent, ms  | 
178  | 
Infrastructure (SELECT 1) Keystone DB queries count  | 
7  | 
Infrastructure (SELECT 1) Keystone DB queries time spent, ms  | 
33  | 
Real Keystone DB queries count  | 
23  | 
Real Keystone DB queries time spent, ms  | 
145  | 
SELECT Keystone DB queries count  | 
21  | 
SELECT Keystone DB queries time spent, ms  | 
136  | 
INSERT Keystone DB queries count  | 
2  | 
INSERT Keystone DB queries time spent, ms  | 
9  | 
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 password.id AS password_id, password.local_user_id AS password_local_user_id, password.password AS password_password FROM password WHERE %(param_1)s = password.local_user_id  | 
9  | 
SELECT user.id AS user_id, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user LEFT OUTER JOIN local_user ON user.id = local_user.user_id WHERE local_user.domain_id = %(domain_id_1)s  | 
4  | 
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 = %(param_1)s  | 
4  | 
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  | 
12  | 
SELECT local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id  | 
10  | 
SELECT user.id AS user_id, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user WHERE user.id = %(param_1)s  | 
9  | 
SELECT local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user LEFT OUTER JOIN local_user ON user.id = local_user.user_id WHERE local_user.domain_id = %(domain_id_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id  | 
9  | 
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  | 
5  | 
SELECT federated_user.id AS federated_user_id, federated_user.user_id AS federated_user_user_id, federated_user.idp_id AS federated_user_idp_id, federated_user.protocol_id AS federated_user_protocol_id, federated_user.unique_id AS federated_user_unique_id, federated_user.display_name AS federated_user_display_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN federated_user ON anon_1.user_id = federated_user.user_id ORDER BY anon_1.user_id  | 
4  | 
Keystone DB queries with multi JOINs inside
DB query  | 
Time spent, ms  | 
Keystone cached methods stats
Cache  | 
Cached operations  | 
args  | 
kwargs  | 
Times used  | 
Memcache  | 
get_roles_for_user_and_project  | 
<keystone.assignment.core.Manager object at 0x7fbe19ec8dd0>, u’31d31420a3e349268cd7875aa1825663’, u’f1a058ad00364df29cb819a5478e8884’  | 
2  | 
|
Memcache  | 
get_domain  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’default’  | 
4  | 
|
Memcache  | 
get_project  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’f1a058ad00364df29cb819a5478e8884’  | 
2  | 
|
Memcache  | 
get_role  | 
<keystone.assignment.core.RoleManager object at 0x7fbe19d8d190>, u’8272f6d8be65464e94d3be094cf35e4c’  | 
2  | 
|
Memcache  | 
get_user_by_name  | 
<keystone.identity.core.Manager object at 0x7fbe1a0e0950>, u’admin’, ‘default’  | 
2  | 
|
Memcache  | 
get_project_by_name  | 
<keystone.resource.core.Manager object at 0x7fbe19db6090>, u’admin’, ‘default’  | 
2  | 
|
Memcache  | 
_get_revoke_tree  | 
<keystone.revoke.core.Manager object at 0x7fbe19d9d950>,  | 
1  | 
|
Memcache  | 
_get_token  | 
<keystone.token.persistence.core.PersistenceManager object at 0x7fbe18c53450>, ‘6c4b9b6e838c42ff83e6dcfed52f596e’  | 
1  |