++ LOG_DIR=/var/log/contrail ++ export CONTAINER_LOG_DIR=/var/log/contrail/analytics-api ++ CONTAINER_LOG_DIR=/var/log/contrail/analytics-api ++ mkdir -p /var/log/contrail/analytics-api ++ log_file=/var/log/contrail/analytics-api/console.log ++ touch /var/log/contrail/analytics-api/console.log ++ chmod 600 /var/log/contrail/analytics-api/console.log ++ exec +++ tee -a /var/log/contrail/analytics-api/console.log +++ date ++ echo 'INFO: =================== Thu May 14 01:56:11 AM UTC 2026 ===================' INFO: =================== Thu May 14 01:56:11 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=ens3 ++++ [[ ens3 == \l\o ]] ++++ echo ens3 +++ local nic=ens3 +++ get_ip_for_nic ens3 +++ local nic=ens3 +++ cut -d / -f 1 +++ get_cidr_for_nic ens3 +++ command -v ip +++ local nic=ens3 +++ grep 'inet ' +++ head -n 1 +++ ip addr show dev ens3 +++ awk '{print $2}' ++ DEFAULT_LOCAL_IP=10.0.0.50 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.50:8081 ' ']' +++ echo 10.0.0.50:8081 ++ ANALYTICS_SERVERS=10.0.0.50:8081 +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.50:9042 ' ']' +++ echo 10.0.0.50:9042 ++ ANALYTICSDB_CQL_SERVERS=10.0.0.50:9042 ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.50:8086 ' ']' +++ echo 10.0.0.50:8086 ++ COLLECTOR_SERVERS=10.0.0.50:8086 ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.50 ++ CONFIGDB_NODES=10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.50:8082 ' ']' +++ echo 10.0.0.50:8082 ++ CONFIG_SERVERS=10.0.0.50:8082 +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.50:9161 ' ']' +++ echo 10.0.0.50:9161 ++ CONFIGDB_SERVERS=10.0.0.50:9161 +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.50:9041 ' ']' +++ echo 10.0.0.50:9041 ++ CONFIGDB_CQL_SERVERS=10.0.0.50:9041 ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.17 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.17 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.50:2181, ']' +++ echo 10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.50:2181 ' ']' +++ echo 10.0.0.50:2181 ++ ZOOKEEPER_SERVERS_SPACE_DELIM=10.0.0.50:2181 ++ RABBITMQ_NODES=10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.50:5673, ']' +++ echo 10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.50:6379 ' ']' +++ echo 10.0.0.50:6379 ++ REDIS_SERVERS=10.0.0.50:6379 ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.50:9092 ' ']' +++ echo 10.0.0.50:9092 ++ KAFKA_SERVERS=10.0.0.50:9092 ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.50 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_redis_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_analytics_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.50 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.50 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 ++ get_listen_ip_for_node ANALYTICS +++ find_my_ip_and_order_for_node ANALYTICS +++ local server_typ=ANALYTICS_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.50 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ sort ++++ uniq +++ local local_ips=,10.0.0.50,10.20.0.17,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.50'\''))' +++ local server_ip=10.0.0.50 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.50 ]] +++ [[ ,10.0.0.50,10.20.0.17,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.50, ]] +++ echo 10.0.0.50 1 +++ return ++ local ip=10.0.0.50 ++ [[ -z 10.0.0.50 ]] ++ echo 10.0.0.50 + host_ip=10.0.0.50 + mkdir -p /etc/contrail + cat ++ get_introspect_listen_ip_for_node ANALYTICS ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + is_enabled True + local val=true + [[ true == \t\r\u\e ]] + cat + cat + is_enabled True + local val=true + [[ true == \t\r\u\e ]] + cat + cat + add_ini_params_from_env ANALYTICS_API /etc/contrail/contrail-analytics-api.conf + local service_name=ANALYTICS_API + local cfg_path=/etc/contrail/contrail-analytics-api.conf + local delim=__ ++ set -o posix ++ set ++ cut -d = -f 1 ++ sort ++ grep '^ANALYTICS_API__.*__.*=.*$' ++ sed 's/^ANALYTICS_API__//g' + local vars= + local section= + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs analytics-api + local template=analytics-api ++ dirname /var/log/contrail/analytics-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/analytics-api + chmod 755 /var/log/contrail/analytics-api + mv -n '/var/log/contrail/*analytics-api.log*' /var/log/contrail/analytics-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/analytics-api + find /var/log/contrail/analytics-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-analytics-api -c /etc/contrail/contrail-analytics-api.conf -c /etc/contrail/contrail-keystone-auth.conf + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-analytics-api -c /etc/contrail/contrail-analytics-api.conf -c /etc/contrail/contrail-keystone-auth.conf + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-analytics-api -c /etc/contrail/contrail-analytics-api.conf -c /etc/contrail/contrail-keystone-auth.conf /usr/local/lib/python3.9/site-packages/opserver/opserver_util.py:1001: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(match_sp) is 1: /usr/local/lib/python3.9/site-packages/opserver/opserver_util.py:1012: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(match_v) is 1: /usr/local/lib/python3.9/site-packages/opserver/opserver_util.py:1017: SyntaxWarning: "is" with a literal. Did you mean "=="? elif match_v[0][-1] is '*': /usr/local/lib/python3.9/site-packages/opserver/opserver_util.py:1032: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(match_sp) is 1: 05/14/2026 01:56:18.756 7f4a5789dc40 [contrail-analytics-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 05/14/2026 01:56:18.929 7f4a5789dc40 [contrail-analytics-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8090 05/14/2026 01:56:18.939 7f4a5789dc40 [contrail-analytics-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 05/14/2026 01:56:18.939 7f4a5789dc40 [contrail-analytics-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/analytics-api/contrail-analytics-api.log] Bottle v0.12.25 server starting up (using ContrailGeventServer())... Listening on http://10.0.0.50:8081/ Hit Ctrl-C to quit. Bottle v0.12.25 server starting up (using GeventPoolServer())... Listening on http://localhost:8181/ Hit Ctrl-C to quit. [API:8081]10.0.0.50 - - [2026-05-14 01:56:28] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 144 0.400990 [API:8081]10.0.0.50 - - [2026-05-14 01:56:28] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 144 0.059134 [API:8081]10.0.0.50 - - [2026-05-14 01:56:52] "GET /analytics HTTP/1.1" 401 205 0.000316 [API:8081]10.0.0.50 - - [2026-05-14 01:56:52] "GET /analytics HTTP/1.1" 401 205 0.000167 [API:8081]10.0.0.50 - - [2026-05-14 01:57:23] "GET /analytics HTTP/1.1" 401 205 0.000306 [API:8081]10.0.0.50 - - [2026-05-14 01:57:23] "GET /analytics HTTP/1.1" 401 205 0.000153 [API:8081]10.0.0.50 - - [2026-05-14 01:57:29] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 144 0.063667 [API:8081]10.0.0.50 - - [2026-05-14 01:57:29] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 144 0.066171 [API:8081]10.0.0.50 - - [2026-05-14 01:58:29] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 144 0.054452 [API:8081]10.0.0.50 - - [2026-05-14 01:58:30] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 144 0.062524 [Introspect:8090]10.0.0.50 - - [2026-05-14 01:59:21] "GET /Snh_SandeshUVECacheReq?x=NodeStatus HTTP/1.1" 200 2998 0.001151 [API:8081]10.0.0.50 - - [2026-05-14 01:59:30] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 144 0.065793 [API:8081]10.0.0.50 - - [2026-05-14 01:59:31] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.069938 [Introspect:8090]10.0.0.50 - - [2026-05-14 01:59:34] "GET /Snh_SandeshUVECacheReq?x=NodeStatus HTTP/1.1" 200 2998 0.001425 [Introspect:8090]10.0.0.50 - - [2026-05-14 01:59:36] "GET /Snh_SandeshUVECacheReq?x=NodeStatus HTTP/1.1" 200 2998 0.001705 [API:8081]10.0.0.50 - - [2026-05-14 01:59:48] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000346 [API:8081]10.0.0.50 - - [2026-05-14 01:59:48] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000292 [API:8081]10.0.0.50 - - [2026-05-14 01:59:49] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000290 [API:8081]10.0.0.50 - - [2026-05-14 01:59:49] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000318 [API:8081]10.0.0.50 - - [2026-05-14 02:00:31] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.073337 [API:8081]10.0.0.50 - - [2026-05-14 02:00:31] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.068337 [Introspect:8090]10.0.0.50 - - [2026-05-14 02:00:50] "GET /Snh_SandeshUVECacheReq?x=NodeStatus HTTP/1.1" 200 2998 0.001113 [API:8081]10.0.0.50 - - [2026-05-14 02:00:55] "GET /analytics/uves/virtual-networks HTTP/1.1" 401 205 0.000319 [API:8081]10.0.0.50 - - [2026-05-14 02:00:55] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1146 0.061846 [API:8081]10.0.0.50 - - [2026-05-14 02:01:10] "POST /analytics/query HTTP/1.1" 200 30425 1.039355 [API:8081]10.0.0.50 - - [2026-05-14 02:01:11] "POST /analytics/query HTTP/1.1" 200 2855 1.016661 [API:8081]10.0.0.50 - - [2026-05-14 02:01:12] "POST /analytics/query HTTP/1.1" 200 871 1.016808 [API:8081]10.0.0.50 - - [2026-05-14 02:01:13] "POST /analytics/query HTTP/1.1" 200 2855 1.017696 [API:8081]10.0.0.50 - - [2026-05-14 02:01:14] "POST /analytics/query HTTP/1.1" 200 871 1.017934 [API:8081]10.0.0.50 - - [2026-05-14 02:01:22] "GET /documentation/index.html HTTP/1.1" 200 5407 0.001710 [API:8081]10.0.0.50 - - [2026-05-14 02:01:28] "GET /analytics/uves/virtual-networks HTTP/1.1" 401 205 0.000282 [API:8081]10.0.0.50 - - [2026-05-14 02:01:29] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1378 0.074375 [API:8081]10.0.0.50 - - [2026-05-14 02:01:30] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1610 0.008068 [API:8081]10.0.0.50 - - [2026-05-14 02:01:32] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.072054 [API:8081]10.0.0.50 - - [2026-05-14 02:01:32] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.071964 [API:8081]10.0.0.50 - - [2026-05-14 02:02:33] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.088009 [API:8081]10.0.0.50 - - [2026-05-14 02:02:33] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.064732 [API:8081]10.0.0.50 - - [2026-05-14 02:03:33] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.079102 [API:8081]10.0.0.50 - - [2026-05-14 02:03:34] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.062228 [API:8081]10.0.0.50 - - [2026-05-14 02:03:57] "GET /analytics/uves/virtual-networks HTTP/1.1" 401 205 0.000363 [API:8081]10.0.0.50 - - [2026-05-14 02:03:57] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 2150 0.060027 [API:8081]10.0.0.50 - - [2026-05-14 02:03:57] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 2150 0.006248 [API:8081]10.0.0.50 - - [2026-05-14 02:04:05] "GET /analytics/uves/virtual-networks HTTP/1.1" 401 205 0.000444 [API:8081]10.0.0.50 - - [2026-05-14 02:04:06] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1946 0.086206 [API:8081]10.0.0.50 - - [2026-05-14 02:04:13] "GET /analytics/uves/virtual-networks HTTP/1.1" 401 205 0.000296 [API:8081]10.0.0.50 - - [2026-05-14 02:04:14] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 2126 0.058408 [API:8081]10.0.0.50 - - [2026-05-14 02:04:14] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1334 0.009346 [API:8081]10.0.0.50 - - [2026-05-14 02:04:35] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.081937 [API:8081]10.0.0.50 - - [2026-05-14 02:04:35] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.060394 [API:8081]10.0.0.50 - - [2026-05-14 02:04:48] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000439 [API:8081]10.0.0.50 - - [2026-05-14 02:04:48] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000274 [API:8081]10.0.0.50 - - [2026-05-14 02:04:49] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000262 [API:8081]10.0.0.50 - - [2026-05-14 02:04:49] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000247 [API:8081]10.0.0.50 - - [2026-05-14 02:05:13] "GET /analytics/uves/virtual-networks HTTP/1.1" 401 205 0.000329 [API:8081]10.0.0.50 - - [2026-05-14 02:05:14] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1126 0.067148 [API:8081]10.0.0.50 - - [2026-05-14 02:05:15] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1338 0.007057 [API:8081]10.0.0.50 - - [2026-05-14 02:05:16] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1552 0.007639 [API:8081]10.0.0.50 - - [2026-05-14 02:05:36] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.085941 [API:8081]10.0.0.50 - - [2026-05-14 02:05:36] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.066503 [LOCAL API:8181]127.0.0.1 - - [2026-05-14 02:06:19] "GET /analytics/uves/database-nodes?cfilt=DatabaseUsageInfo HTTP/1.1" 200 300 0.001134 [LOCAL API:8181]127.0.0.1 - - [2026-05-14 02:06:19] "GET /analytics/uves/database-node/cn-jenkins-deploy-platform-ansible-os-5776-1.?cfilt=DatabaseUsageInfo HTTP/1.1" 200 295 0.001455 [LOCAL API:8181]127.0.0.1 - - [2026-05-14 02:06:19] "GET /analytics/uves/database-nodes?cfilt=CassandraStatusData:cassandra_compaction_task HTTP/1.1" 200 328 0.001084 [LOCAL API:8181]127.0.0.1 - - [2026-05-14 02:06:19] "GET /analytics/uves/database-node/cn-jenkins-deploy-platform-ansible-os-5776-1.?cfilt=CassandraStatusData:cassandra_compaction_task HTTP/1.1" 200 214 0.001495 [API:8081]10.0.0.50 - - [2026-05-14 02:06:37] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.079041 [API:8081]10.0.0.50 - - [2026-05-14 02:06:37] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.056025 [API:8081]10.0.0.50 - - [2026-05-14 02:07:23] "GET /analytics HTTP/1.1" 401 205 0.000370 [API:8081]10.0.0.50 - - [2026-05-14 02:07:23] "GET /analytics HTTP/1.1" 401 205 0.000207 [API:8081]10.0.0.50 - - [2026-05-14 02:07:37] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.078218 [API:8081]10.0.0.50 - - [2026-05-14 02:07:38] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.074579 [API:8081]10.0.0.50 - - [2026-05-14 02:08:38] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.070152 [API:8081]10.0.0.50 - - [2026-05-14 02:08:39] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.071957 [API:8081]10.0.0.50 - - [2026-05-14 02:08:50] "GET /analytics/uves/virtual-networks HTTP/1.1" 401 205 0.000271 [API:8081]10.0.0.50 - - [2026-05-14 02:08:50] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1120 0.120805 [API:8081]10.0.0.50 - - [2026-05-14 02:09:39] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.135275 [API:8081]10.0.0.50 - - [2026-05-14 02:09:39] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.086101 [API:8081]10.0.0.50 - - [2026-05-14 02:09:44] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbac-57636400:ctest-TestRbac-57636400-18546624?flat HTTP/1.1" 401 205 0.000302 [API:8081]10.0.0.50 - - [2026-05-14 02:09:45] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbac-57636400:ctest-TestRbac-57636400-18546624?flat HTTP/1.1" 200 2076 0.519413 [API:8081]10.0.0.50 - - [2026-05-14 02:09:45] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 335 0.119366 [API:8081]10.0.0.50 - - [2026-05-14 02:09:45] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbac-57636400:ctest-TestRbac-57636400-18546624?flat HTTP/1.1" 401 205 0.000334 [API:8081]10.0.0.50 - - [2026-05-14 02:09:45] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbac-57636400:ctest-TestRbac-57636400-18546624?flat HTTP/1.1" 200 2076 0.188733 [API:8081]10.0.0.50 - - [2026-05-14 02:09:45] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 335 0.119482 [API:8081]10.0.0.50 - - [2026-05-14 02:09:48] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000278 [API:8081]10.0.0.50 - - [2026-05-14 02:09:48] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000247 [API:8081]10.0.0.50 - - [2026-05-14 02:09:49] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000354 [API:8081]10.0.0.50 - - [2026-05-14 02:09:49] "GET /analytics/uves/bgp-peers HTTP/1.1" 401 205 0.000290 [API:8081]10.0.0.50 - - [2026-05-14 02:10:00] "GET /analytics/uves/virtual-machine/84c1a50a-b989-4728-9e3a-42febcf7948f?flat HTTP/1.1" 200 965 0.082712 [API:8081]10.0.0.50 - - [2026-05-14 02:10:02] "GET /analytics/uves/virtual-machine/84c1a50a-b989-4728-9e3a-42febcf7948f?flat HTTP/1.1" 200 965 0.078181 [API:8081]10.0.0.50 - - [2026-05-14 02:10:04] "GET /analytics/uves/virtual-machine/84c1a50a-b989-4728-9e3a-42febcf7948f?flat HTTP/1.1" 200 965 0.070653 [API:8081]10.0.0.50 - - [2026-05-14 02:10:06] "GET /analytics/uves/virtual-machine/84c1a50a-b989-4728-9e3a-42febcf7948f?flat HTTP/1.1" 200 965 0.071657 [API:8081]10.0.0.50 - - [2026-05-14 02:10:09] "GET /analytics/uves/virtual-machine/84c1a50a-b989-4728-9e3a-42febcf7948f?flat HTTP/1.1" 200 965 0.070514 [API:8081]10.0.0.50 - - [2026-05-14 02:10:11] "GET /analytics/uves/virtual-machine/84c1a50a-b989-4728-9e3a-42febcf7948f?flat HTTP/1.1" 200 965 0.068414 [API:8081]10.0.0.50 - - [2026-05-14 02:10:13] "GET /analytics/uves/virtual-machine/84c1a50a-b989-4728-9e3a-42febcf7948f?flat HTTP/1.1" 200 965 0.070374 [API:8081]10.0.0.50 - - [2026-05-14 02:10:15] "GET /analytics/uves/virtual-machine/84c1a50a-b989-4728-9e3a-42febcf7948f?flat HTTP/1.1" 200 1397 0.071455 [API:8081]10.0.0.50 - - [2026-05-14 02:10:15] "GET /analytics/uves/virtual-machine-interface/default-domain:ctest-TestRbac-00008441:b816e2d9-2d8a-4e28-ac43-b7dd7c55acf1?flat HTTP/1.1" 200 5319 0.169943 [API:8081]10.0.0.50 - - [2026-05-14 02:10:15] "GET /analytics/uves/virtual-machine-interface/default-domain:ctest-TestRbac-00008441:b816e2d9-2d8a-4e28-ac43-b7dd7c55acf1?flat HTTP/1.1" 200 5319 0.165668 [API:8081]10.0.0.50 - - [2026-05-14 02:10:15] "GET /analytics/uves/virtual-machine/84c1a50a-b989-4728-9e3a-42febcf7948f?flat HTTP/1.1" 200 1397 0.117015 [API:8081]10.0.0.50 - - [2026-05-14 02:10:15] "GET /analytics/uves/virtual-machine-interface/default-domain:ctest-TestRbac-00008441:b816e2d9-2d8a-4e28-ac43-b7dd7c55acf1?flat HTTP/1.1" 200 5319 0.166670 [API:8081]10.0.0.50 - - [2026-05-14 02:10:16] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbac-57636400:ctest-TestRbac-57636400-18546624?flat HTTP/1.1" 200 5526 0.173866 [API:8081]10.0.0.50 - - [2026-05-14 02:10:16] "GET /analytics/uves/virtual-machine/84c1a50a-b989-4728-9e3a-42febcf7948f?flat HTTP/1.1" 200 1397 0.118510 [API:8081]10.0.0.50 - - [2026-05-14 02:10:16] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 403 198 0.110747 [API:8081]10.0.0.50 - - [2026-05-14 02:10:16] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 403 198 0.127397 [API:8081]10.0.0.50 - - [2026-05-14 02:10:16] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 401 205 0.000251 [API:8081]10.0.0.50 - - [2026-05-14 02:10:17] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 25169 0.069217 [API:8081]10.0.0.50 - - [2026-05-14 02:10:17] "GET /analytics/uves/vrouter/cn-jenkins-deploy-platform-ansible-os-5776-1?flat HTTP/1.1" 200 12399 0.057756 [API:8081]10.0.0.50 - - [2026-05-14 02:10:17] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 403 198 0.107329 [API:8081]10.0.0.50 - - [2026-05-14 02:10:17] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 403 198 0.122325 [API:8081]10.0.0.50 - - [2026-05-14 02:10:17] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 25169 0.059017 [API:8081]10.0.0.50 - - [2026-05-14 02:10:17] "GET /analytics/uves/vrouter/cn-jenkins-deploy-platform-ansible-os-5776-1?flat HTTP/1.1" 200 12399 0.056693 [API:8081]10.0.0.50 - - [2026-05-14 02:10:17] "GET /analytics/uves/virtual-machines HTTP/1.1" 200 265 0.113097 [API:8081]10.0.0.50 - - [2026-05-14 02:10:20] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 403 198 0.070253 [API:8081]10.0.0.50 - - [2026-05-14 02:10:20] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 403 198 0.131922 [API:8081]10.0.0.50 - - [2026-05-14 02:10:21] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.049525 [API:8081]10.0.0.50 - - [2026-05-14 02:10:24] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.007652 [API:8081]10.0.0.50 - - [2026-05-14 02:10:27] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.007582 [API:8081]10.0.0.50 - - [2026-05-14 02:10:30] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.008825 [API:8081]10.0.0.50 - - [2026-05-14 02:10:33] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.007403 [API:8081]10.0.0.50 - - [2026-05-14 02:10:36] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.008288 [API:8081]10.0.0.50 - - [2026-05-14 02:10:39] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.007608 [API:8081]10.0.0.50 - - [2026-05-14 02:10:40] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.058919 [API:8081]10.0.0.50 - - [2026-05-14 02:10:40] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.054554 [API:8081]10.0.0.50 - - [2026-05-14 02:10:42] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.007161 [API:8081]10.0.0.50 - - [2026-05-14 02:10:45] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.007625 [API:8081]10.0.0.50 - - [2026-05-14 02:10:48] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.006610 [API:8081]10.0.0.50 - - [2026-05-14 02:10:51] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.007309 [API:8081]10.0.0.50 - - [2026-05-14 02:10:54] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.008747 [API:8081]10.0.0.50 - - [2026-05-14 02:10:57] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.006864 [API:8081]10.0.0.50 - - [2026-05-14 02:11:00] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.008677 [API:8081]10.0.0.50 - - [2026-05-14 02:11:03] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.007345 [API:8081]10.0.0.50 - - [2026-05-14 02:11:06] "GET /analytics/uves/generator/cn-jenkins-deploy-platform-ansible-os-5776-1.:Compute:contrail-vrouter-agent:0?flat HTTP/1.1" 200 128 0.007063 [API:8081]10.0.0.50 - - [2026-05-14 02:11:21] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-61065398:ctest-TestRbacBasic-61065398-77825685?flat HTTP/1.1" 401 205 0.000312 [API:8081]10.0.0.50 - - [2026-05-14 02:11:21] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-61065398:ctest-TestRbacBasic-61065398-77825685?flat HTTP/1.1" 200 2125 0.148460 [API:8081]10.0.0.50 - - [2026-05-14 02:11:21] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-61065398:ctest-TestRbacBasic-61065398-77825685?flat HTTP/1.1" 401 205 0.000245 --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 126, in get_obj_perms_by_name obj = getattr(self._vnc_api_client, obj_get_method) (id = uuid) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 728, in _object_read response = self._request_server(OP_GET, uri, query_params) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1126, in _request_server return self._request( File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1183, in _request raise PermissionDenied(content) vnc_api.exceptions.PermissionDenied: Permission Denied for ['ctest-TestRbacBasic-02438230'] to read operation in domain 'default-domain' and project 'ctest-TestRbacBasic-67287544' RBAC: ctest-TestRbacBasic-95131613 doesn't have read permission in project '74ffbf768dd84f8abe4878e37ad5ed7a' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib64/python3.9/logging/handlers.py", line 73, in emit if self.shouldRollover(record): File "/usr/lib64/python3.9/logging/handlers.py", line 194, in shouldRollover msg = "%s\n" % self.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 927, in format return fmt.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 663, in format record.message = record.getMessage() File "/usr/lib64/python3.9/logging/__init__.py", line 367, in getMessage msg = msg % self.args TypeError: not enough arguments for format string Call stack: File "/usr/local/lib64/python3.9/site-packages/gevent/baseserver.py", line 34, in _handle_and_close_when_done return handle(*args_tuple) File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1704, in handle handler.handle() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 578, in handle result = self.handle_one_request() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 808, in handle_one_request self.handle_one_response() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1111, in handle_one_response self.run_application() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1057, in run_application self.result = self.application(self.environ, self.start_response) File "/usr/local/bin/bottle.py", line 993, in __call__ return self.wsgi(environ, start_response) File "/usr/local/bin/bottle.py", line 968, in wsgi out = self._cast(self._handle(environ)) File "/usr/local/bin/bottle.py", line 937, in _cast first = next(iout) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 2052, in dyn_http_get rv_obj_perms = self.get_obj_perms(name, cfg_type) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 1319, in get_obj_perms rv_obj_perms = self._vnc_api_client.get_obj_perms_by_name( File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 129, in get_obj_perms_by_name self._logger.error("fq_name:%s cfg_type:%s uuid:%s Exception: %s", \ Message: 'fq_name:%s cfg_type:%s uuid:%s Exception: %s' Arguments: ((['default-domain', 'ctest-TestRbacBasic-61065398', 'ctest-TestRbacBasic-61065398-77825685'], 'virtual_network', 'd5745f90-e297-4714-b8e4-bf167fddfbe9', "Permission Denied for ['ctest-TestRbacBasic-02438230'] to read operation in domain 'default-domain' and project 'ctest-TestRbacBasic-67287544' RBAC: ctest-TestRbacBasic-95131613 doesn't have read permission in project '74ffbf768dd84f8abe4878e37ad5ed7a'"),) [API:8081]10.0.0.50 - - [2026-05-14 02:11:21] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-61065398:ctest-TestRbacBasic-61065398-77825685?flat HTTP/1.1" 403 198 0.141704 [API:8081]10.0.0.50 - - [2026-05-14 02:11:21] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-61065398:ctest-TestRbacBasic-61065398-77825685?flat HTTP/1.1" 401 205 0.000274 [API:8081]10.0.0.50 - - [2026-05-14 02:11:22] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-61065398:ctest-TestRbacBasic-61065398-77825685?flat HTTP/1.1" 200 2125 0.062095 [API:8081]10.0.0.50 - - [2026-05-14 02:11:22] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 355 0.112586 [API:8081]10.0.0.50 - - [2026-05-14 02:11:22] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 355 0.113083 [API:8081]10.0.0.50 - - [2026-05-14 02:11:22] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1406 0.049130 --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 126, in get_obj_perms_by_name obj = getattr(self._vnc_api_client, obj_get_method) (id = uuid) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 728, in _object_read response = self._request_server(OP_GET, uri, query_params) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1126, in _request_server return self._request( File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1183, in _request raise PermissionDenied(content) vnc_api.exceptions.PermissionDenied: Permission Denied for ['ctest-TestRbacBasic-02438230'] to read operation in domain 'default-domain' and project 'ctest-TestRbacBasic-61065398' RBAC: ctest-TestRbacBasic-95131613 doesn't have read permission in project '9d05a27c76e04937b51df78c5831de75' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib64/python3.9/logging/handlers.py", line 73, in emit if self.shouldRollover(record): File "/usr/lib64/python3.9/logging/handlers.py", line 194, in shouldRollover msg = "%s\n" % self.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 927, in format return fmt.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 663, in format record.message = record.getMessage() File "/usr/lib64/python3.9/logging/__init__.py", line 367, in getMessage msg = msg % self.args TypeError: not enough arguments for format string Call stack: File "/usr/local/lib64/python3.9/site-packages/gevent/baseserver.py", line 34, in _handle_and_close_when_done return handle(*args_tuple) File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1704, in handle handler.handle() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 578, in handle result = self.handle_one_request() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 808, in handle_one_request self.handle_one_response() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1111, in handle_one_response self.run_application() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1057, in run_application self.result = self.application(self.environ, self.start_response) File "/usr/local/bin/bottle.py", line 993, in __call__ return self.wsgi(environ, start_response) File "/usr/local/bin/bottle.py", line 968, in wsgi out = self._cast(self._handle(environ)) File "/usr/local/bin/bottle.py", line 937, in _cast first = next(iout) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 2052, in dyn_http_get rv_obj_perms = self.get_obj_perms(name, cfg_type) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 1319, in get_obj_perms rv_obj_perms = self._vnc_api_client.get_obj_perms_by_name( File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 129, in get_obj_perms_by_name self._logger.error("fq_name:%s cfg_type:%s uuid:%s Exception: %s", \ Message: 'fq_name:%s cfg_type:%s uuid:%s Exception: %s' Arguments: ((['default-domain', 'ctest-TestRbacBasic-61065398', 'ctest-TestRbacBasic-61065398-77825685'], 'virtual_network', 'd5745f90-e297-4714-b8e4-bf167fddfbe9', "Permission Denied for ['ctest-TestRbacBasic-02438230'] to read operation in domain 'default-domain' and project 'ctest-TestRbacBasic-61065398' RBAC: ctest-TestRbacBasic-95131613 doesn't have read permission in project '9d05a27c76e04937b51df78c5831de75'"),) [API:8081]10.0.0.50 - - [2026-05-14 02:11:22] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-61065398:ctest-TestRbacBasic-61065398-77825685?flat HTTP/1.1" 403 198 0.106082 --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 126, in get_obj_perms_by_name obj = getattr(self._vnc_api_client, obj_get_method) (id = uuid) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 728, in _object_read response = self._request_server(OP_GET, uri, query_params) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1126, in _request_server return self._request( File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1183, in _request raise PermissionDenied(content) vnc_api.exceptions.PermissionDenied: Permission Denied for ['ctest-TestRbacBasic-02438230'] to read operation in domain 'default-domain' and project 'ctest-TestRbacBasic-61065398' RBAC: ctest-TestRbacBasic-95131613 doesn't have read permission in project '9d05a27c76e04937b51df78c5831de75' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib64/python3.9/logging/handlers.py", line 73, in emit if self.shouldRollover(record): File "/usr/lib64/python3.9/logging/handlers.py", line 194, in shouldRollover msg = "%s\n" % self.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 927, in format return fmt.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 663, in format record.message = record.getMessage() File "/usr/lib64/python3.9/logging/__init__.py", line 367, in getMessage msg = msg % self.args TypeError: not enough arguments for format string Call stack: File "/usr/local/lib64/python3.9/site-packages/gevent/baseserver.py", line 34, in _handle_and_close_when_done return handle(*args_tuple) File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1704, in handle handler.handle() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 578, in handle result = self.handle_one_request() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 808, in handle_one_request self.handle_one_response() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1111, in handle_one_response self.run_application() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1057, in run_application self.result = self.application(self.environ, self.start_response) File "/usr/local/bin/bottle.py", line 993, in __call__ return self.wsgi(environ, start_response) File "/usr/local/bin/bottle.py", line 968, in wsgi out = self._cast(self._handle(environ)) File "/usr/local/bin/bottle.py", line 937, in _cast first = next(iout) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 2052, in dyn_http_get rv_obj_perms = self.get_obj_perms(name, cfg_type) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 1319, in get_obj_perms rv_obj_perms = self._vnc_api_client.get_obj_perms_by_name( File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 129, in get_obj_perms_by_name self._logger.error("fq_name:%s cfg_type:%s uuid:%s Exception: %s", \ Message: 'fq_name:%s cfg_type:%s uuid:%s Exception: %s' Arguments: ((['default-domain', 'ctest-TestRbacBasic-61065398', 'ctest-TestRbacBasic-61065398-77825685'], 'virtual_network', 'd5745f90-e297-4714-b8e4-bf167fddfbe9', "Permission Denied for ['ctest-TestRbacBasic-02438230'] to read operation in domain 'default-domain' and project 'ctest-TestRbacBasic-61065398' RBAC: ctest-TestRbacBasic-95131613 doesn't have read permission in project '9d05a27c76e04937b51df78c5831de75'"),) [API:8081]10.0.0.50 - - [2026-05-14 02:11:23] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-61065398:ctest-TestRbacBasic-61065398-77825685?flat HTTP/1.1" 403 198 0.134484 [API:8081]10.0.0.50 - - [2026-05-14 02:11:23] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-61065398:ctest-TestRbacBasic-61065398-77825685?flat HTTP/1.1" 200 2129 0.162360 [API:8081]10.0.0.50 - - [2026-05-14 02:11:23] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-61065398:ctest-TestRbacBasic-61065398-77825685?flat HTTP/1.1" 200 2129 0.048388 [API:8081]10.0.0.50 - - [2026-05-14 02:11:23] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 109 0.118619 [API:8081]10.0.0.50 - - [2026-05-14 02:11:23] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 601 0.116482 [API:8081]10.0.0.50 - - [2026-05-14 02:11:23] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1406 0.049744 [API:8081]10.0.0.50 - - [2026-05-14 02:11:29] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 1160 0.006717 [API:8081]10.0.0.50 - - [2026-05-14 02:11:31] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-23635768:ctest-TestRbacBasic-23635768-36881316?flat HTTP/1.1" 401 205 0.000255 --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 126, in get_obj_perms_by_name obj = getattr(self._vnc_api_client, obj_get_method) (id = uuid) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 728, in _object_read response = self._request_server(OP_GET, uri, query_params) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1126, in _request_server return self._request( File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1183, in _request raise PermissionDenied(content) vnc_api.exceptions.PermissionDenied: Permission Denied for ctest-TestRbacBasic-98067739 as ['ctest-TestRbacBasic-40340918'] to R virtual-network in ctest-TestRbacBasic-23635768 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib64/python3.9/logging/handlers.py", line 73, in emit if self.shouldRollover(record): File "/usr/lib64/python3.9/logging/handlers.py", line 194, in shouldRollover msg = "%s\n" % self.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 927, in format return fmt.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 663, in format record.message = record.getMessage() File "/usr/lib64/python3.9/logging/__init__.py", line 367, in getMessage msg = msg % self.args TypeError: not enough arguments for format string Call stack: File "/usr/local/lib64/python3.9/site-packages/gevent/baseserver.py", line 34, in _handle_and_close_when_done return handle(*args_tuple) File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1704, in handle handler.handle() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 578, in handle result = self.handle_one_request() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 808, in handle_one_request self.handle_one_response() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1111, in handle_one_response self.run_application() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1057, in run_application self.result = self.application(self.environ, self.start_response) File "/usr/local/bin/bottle.py", line 993, in __call__ return self.wsgi(environ, start_response) File "/usr/local/bin/bottle.py", line 968, in wsgi out = self._cast(self._handle(environ)) File "/usr/local/bin/bottle.py", line 937, in _cast first = next(iout) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 2052, in dyn_http_get rv_obj_perms = self.get_obj_perms(name, cfg_type) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 1319, in get_obj_perms rv_obj_perms = self._vnc_api_client.get_obj_perms_by_name( File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 129, in get_obj_perms_by_name self._logger.error("fq_name:%s cfg_type:%s uuid:%s Exception: %s", \ Message: 'fq_name:%s cfg_type:%s uuid:%s Exception: %s' Arguments: ((['default-domain', 'ctest-TestRbacBasic-23635768', 'ctest-TestRbacBasic-23635768-36881316'], 'virtual_network', 'e35f135c-cc87-4c6c-8e8a-0f3af3e1f589', "Permission Denied for ctest-TestRbacBasic-98067739 as ['ctest-TestRbacBasic-40340918'] to R virtual-network in ctest-TestRbacBasic-23635768"),) [API:8081]10.0.0.50 - - [2026-05-14 02:11:31] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-23635768:ctest-TestRbacBasic-23635768-36881316?flat HTTP/1.1" 403 198 0.234265 [API:8081]10.0.0.50 - - [2026-05-14 02:11:32] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 109 0.189223 [API:8081]10.0.0.50 - - [2026-05-14 02:11:33] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-23635768:ctest-TestRbacBasic-23635768-36881316?flat HTTP/1.1" 200 2121 0.122184 [API:8081]10.0.0.50 - - [2026-05-14 02:11:33] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 355 0.119480 --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 126, in get_obj_perms_by_name obj = getattr(self._vnc_api_client, obj_get_method) (id = uuid) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 728, in _object_read response = self._request_server(OP_GET, uri, query_params) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1126, in _request_server return self._request( File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1183, in _request raise PermissionDenied(content) vnc_api.exceptions.PermissionDenied: Permission Denied for ctest-TestRbacBasic-98067739 as ['ctest-TestRbacBasic-40340918'] to R virtual-network in ctest-TestRbacBasic-23635768 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib64/python3.9/logging/handlers.py", line 73, in emit if self.shouldRollover(record): File "/usr/lib64/python3.9/logging/handlers.py", line 194, in shouldRollover msg = "%s\n" % self.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 927, in format return fmt.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 663, in format record.message = record.getMessage() File "/usr/lib64/python3.9/logging/__init__.py", line 367, in getMessage msg = msg % self.args TypeError: not enough arguments for format string Call stack: File "/usr/local/lib64/python3.9/site-packages/gevent/baseserver.py", line 34, in _handle_and_close_when_done return handle(*args_tuple) File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1704, in handle handler.handle() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 578, in handle result = self.handle_one_request() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 808, in handle_one_request self.handle_one_response() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1111, in handle_one_response self.run_application() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1057, in run_application self.result = self.application(self.environ, self.start_response) File "/usr/local/bin/bottle.py", line 993, in __call__ return self.wsgi(environ, start_response) File "/usr/local/bin/bottle.py", line 968, in wsgi out = self._cast(self._handle(environ)) File "/usr/local/bin/bottle.py", line 937, in _cast first = next(iout) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 2052, in dyn_http_get rv_obj_perms = self.get_obj_perms(name, cfg_type) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 1319, in get_obj_perms rv_obj_perms = self._vnc_api_client.get_obj_perms_by_name( File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 129, in get_obj_perms_by_name self._logger.error("fq_name:%s cfg_type:%s uuid:%s Exception: %s", \ Message: 'fq_name:%s cfg_type:%s uuid:%s Exception: %s' Arguments: ((['default-domain', 'ctest-TestRbacBasic-23635768', 'ctest-TestRbacBasic-23635768-36881316'], 'virtual_network', 'e35f135c-cc87-4c6c-8e8a-0f3af3e1f589', "Permission Denied for ctest-TestRbacBasic-98067739 as ['ctest-TestRbacBasic-40340918'] to R virtual-network in ctest-TestRbacBasic-23635768"),) [API:8081]10.0.0.50 - - [2026-05-14 02:11:34] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-23635768:ctest-TestRbacBasic-23635768-36881316?flat HTTP/1.1" 403 198 0.112760 --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 126, in get_obj_perms_by_name obj = getattr(self._vnc_api_client, obj_get_method) (id = uuid) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 728, in _object_read response = self._request_server(OP_GET, uri, query_params) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1126, in _request_server return self._request( File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1183, in _request raise PermissionDenied(content) vnc_api.exceptions.PermissionDenied: Permission Denied for ctest-TestRbacBasic-98067739 as ['ctest-TestRbacBasic-40340918'] to R virtual-network in ctest-TestRbacBasic-23635768 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib64/python3.9/logging/handlers.py", line 73, in emit if self.shouldRollover(record): File "/usr/lib64/python3.9/logging/handlers.py", line 194, in shouldRollover msg = "%s\n" % self.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 927, in format return fmt.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 663, in format record.message = record.getMessage() File "/usr/lib64/python3.9/logging/__init__.py", line 367, in getMessage msg = msg % self.args TypeError: not enough arguments for format string Call stack: File "/usr/local/lib64/python3.9/site-packages/gevent/baseserver.py", line 34, in _handle_and_close_when_done return handle(*args_tuple) File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1704, in handle handler.handle() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 578, in handle result = self.handle_one_request() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 808, in handle_one_request self.handle_one_response() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1111, in handle_one_response self.run_application() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1057, in run_application self.result = self.application(self.environ, self.start_response) File "/usr/local/bin/bottle.py", line 993, in __call__ return self.wsgi(environ, start_response) File "/usr/local/bin/bottle.py", line 968, in wsgi out = self._cast(self._handle(environ)) File "/usr/local/bin/bottle.py", line 937, in _cast first = next(iout) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 2052, in dyn_http_get rv_obj_perms = self.get_obj_perms(name, cfg_type) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 1319, in get_obj_perms rv_obj_perms = self._vnc_api_client.get_obj_perms_by_name( File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 129, in get_obj_perms_by_name self._logger.error("fq_name:%s cfg_type:%s uuid:%s Exception: %s", \ Message: 'fq_name:%s cfg_type:%s uuid:%s Exception: %s' Arguments: ((['default-domain', 'ctest-TestRbacBasic-23635768', 'ctest-TestRbacBasic-23635768-36881316'], 'virtual_network', 'e35f135c-cc87-4c6c-8e8a-0f3af3e1f589', "Permission Denied for ctest-TestRbacBasic-98067739 as ['ctest-TestRbacBasic-40340918'] to R virtual-network in ctest-TestRbacBasic-23635768"),) [API:8081]10.0.0.50 - - [2026-05-14 02:11:35] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-23635768:ctest-TestRbacBasic-23635768-36881316?flat HTTP/1.1" 403 198 0.143503 [API:8081]10.0.0.50 - - [2026-05-14 02:11:35] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 109 0.104619 [API:8081]10.0.0.50 - - [2026-05-14 02:11:35] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-23635768:ctest-TestRbacBasic-23635768-36881316?flat HTTP/1.1" 200 2121 0.119150 [API:8081]10.0.0.50 - - [2026-05-14 02:11:35] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 355 0.119498 [API:8081]10.0.0.50 - - [2026-05-14 02:11:36] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-23635768:ctest-TestRbacBasic-23635768-36881316?flat HTTP/1.1" 401 205 0.000351 --- Logging error --- Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 126, in get_obj_perms_by_name obj = getattr(self._vnc_api_client, obj_get_method) (id = uuid) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 52, in wrapper return func(self, *args, **kwargs) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 728, in _object_read response = self._request_server(OP_GET, uri, query_params) File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1126, in _request_server return self._request( File "/usr/local/lib/python3.9/site-packages/vnc_api/vnc_api.py", line 1183, in _request raise PermissionDenied(content) vnc_api.exceptions.PermissionDenied: Permission Denied for ctest-TestRbacBasic-95131613 as ['ctest-TestRbacBasic-02438230'] to R virtual-network in ctest-TestRbacBasic-23635768 During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/lib64/python3.9/logging/handlers.py", line 73, in emit if self.shouldRollover(record): File "/usr/lib64/python3.9/logging/handlers.py", line 194, in shouldRollover msg = "%s\n" % self.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 927, in format return fmt.format(record) File "/usr/lib64/python3.9/logging/__init__.py", line 663, in format record.message = record.getMessage() File "/usr/lib64/python3.9/logging/__init__.py", line 367, in getMessage msg = msg % self.args TypeError: not enough arguments for format string Call stack: File "/usr/local/lib64/python3.9/site-packages/gevent/baseserver.py", line 34, in _handle_and_close_when_done return handle(*args_tuple) File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1704, in handle handler.handle() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 578, in handle result = self.handle_one_request() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 808, in handle_one_request self.handle_one_response() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1111, in handle_one_response self.run_application() File "/usr/local/lib64/python3.9/site-packages/gevent/pywsgi.py", line 1057, in run_application self.result = self.application(self.environ, self.start_response) File "/usr/local/bin/bottle.py", line 993, in __call__ return self.wsgi(environ, start_response) File "/usr/local/bin/bottle.py", line 968, in wsgi out = self._cast(self._handle(environ)) File "/usr/local/bin/bottle.py", line 937, in _cast first = next(iout) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 2052, in dyn_http_get rv_obj_perms = self.get_obj_perms(name, cfg_type) File "/usr/local/lib/python3.9/site-packages/opserver/opserver.py", line 1319, in get_obj_perms rv_obj_perms = self._vnc_api_client.get_obj_perms_by_name( File "/usr/local/lib/python3.9/site-packages/opserver/vnc_cfg_api_client.py", line 129, in get_obj_perms_by_name self._logger.error("fq_name:%s cfg_type:%s uuid:%s Exception: %s", \ Message: 'fq_name:%s cfg_type:%s uuid:%s Exception: %s' Arguments: ((['default-domain', 'ctest-TestRbacBasic-23635768', 'ctest-TestRbacBasic-23635768-36881316'], 'virtual_network', 'e35f135c-cc87-4c6c-8e8a-0f3af3e1f589', "Permission Denied for ctest-TestRbacBasic-95131613 as ['ctest-TestRbacBasic-02438230'] to R virtual-network in ctest-TestRbacBasic-23635768"),) [API:8081]10.0.0.50 - - [2026-05-14 02:11:36] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-23635768:ctest-TestRbacBasic-23635768-36881316?flat HTTP/1.1" 403 198 0.143037 [API:8081]10.0.0.50 - - [2026-05-14 02:11:36] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 109 0.105216 [API:8081]10.0.0.50 - - [2026-05-14 02:11:37] "GET /analytics/uves/virtual-network/default-domain:ctest-TestRbacBasic-23635768:ctest-TestRbacBasic-23635768-36881316?flat HTTP/1.1" 200 2121 0.114134 [API:8081]10.0.0.50 - - [2026-05-14 02:11:37] "GET /analytics/uves/virtual-networks HTTP/1.1" 200 355 0.114718 [Introspect:8090]10.0.0.50 - - [2026-05-14 02:11:39] "GET /Snh_SandeshUVECacheReq?x=NodeStatus HTTP/1.1" 200 2998 0.001130 [API:8081]10.0.0.50 - - [2026-05-14 02:11:40] "GET /analytics/uves/vrouter/*?cfilt=VrouterAgent:mode HTTP/1.1" 200 254 0.086830 [API:8081]10.0.0.50 - - [2026-05-14 02:11:41] "GET /analytics/uves/vrouter/*?cfilt=NodeStatus:process_status HTTP/1.1" 200 1077 0.384928 [Introspect:8090]10.0.0.50 - - [2026-05-14 02:12:23] "GET /Snh_SandeshUVECacheReq?x=NodeStatus HTTP/1.1" 200 2998 0.000988