1. Hide »
  2. Versions
    Flask 1.0.2
  3. Time
    CPU: 2.61ms (2.60ms)
  4. HTTP Headers
  5. Request Vars
  6. Config
  7. Templates
    1 rendered
  8. SQLAlchemy
    0 queries
  9. Logging
    0 messages
  10. Route List
    24 routes
  11. Profiler
    View: 2.26ms
«
Close

Versions

Installed Packages

Installation paths relative to:

/usr/local/lib/python3.6/site-packages
Package Version Installed Path
alembic 1.4.2
aniso8601 8.0.0
appdirs 1.4.4
attrs 20.2.0
Babel 2.5.1
blinker 1.4
certifi 2020.6.20
chardet 3.0.4
Click 7.0
distlib 0.3.1
dnspython 1.16.0
dominate 2.5.2
ecdsa 0.14.1
environs 8.0.0
eventlet 0.27.0
filelock 3.0.12
flasgger 0.9.2
Flask 1.0.2
Flask-Babel 0.11.2
Flask-Bootstrap 3.3.7.1
Flask-Cors 3.0.9
Flask-DebugToolbar 0.11.0
Flask-Login 0.4.0
Flask-Mail 0.9.1
flask-marshmallow 0.10.0
Flask-Migrate 2.1.1
Flask-Moment 0.5.2
flask-restplus 0.13.0
Flask-Script 2.0.6
Flask-SQLAlchemy 2.3.2
Flask-Testing 0.8.0
Flask-WTF 0.14.2
greenlet 0.4.16
gunicorn 20.0.4
hiredis 1.1.0
idna 2.10
importlib-metadata 1.7.0
importlib-resources 3.0.0
itsdangerous 1.1.0
Jinja2 2.11.2
jsonschema 3.2.0
Mako 1.1.3
MarkupSafe 1.1.1
marshmallow 3.7.1
mistune 0.8.4
monotonic 1.5
pika 1.1.0
pip 20.2.3
psycopg2-binary 2.8.6
pyasn1 0.4.8
pyrsistent 0.16.0
python-dateutil 2.6.1
python-dotenv 0.14.0
python-editor 1.0.3
python-jose 3.2.0
pytz 2020.1
PyYAML 5.3.1
redis 3.3.8
requests 2.24.0
rsa 4.6
sentry-sdk 0.17.3
setuptools 50.3.0
six 1.15.0
SQLAlchemy 1.3.19
urllib3 1.25.10
virtualenv 20.0.31
visitor 0.1.3
Werkzeug 0.14.1
wheel 0.35.1
WTForms 2.3.3
zipp 3.1.0
Close

Resource Usage

Resource Value
User CPU time 2.606 msec
System CPU time 0.000 msec
Total CPU time 2.606 msec
Elapsed time 2.604 msec
Context switches 0 voluntary, 0 involuntary
Close

HTTP Headers

Key Value
HTTP_ACCEPT */*
HTTP_ACCEPT_ENCODING gzip, br, zstd, deflate
HTTP_CONNECTION close
HTTP_HOST py-func.web.ts.soscredit.info
HTTP_REFERER https://py-func.web.ts.soscredit.info/api/doc
HTTP_USER_AGENT Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
QUERY_STRING
REMOTE_ADDR 216.73.216.11
REQUEST_METHOD GET
SCRIPT_NAME
SERVER_NAME 0.0.0.0
SERVER_PORT 80
SERVER_PROTOCOL HTTP/1.1
SERVER_SOFTWARE gunicorn/20.0.4
Close

Request Vars

View information

View Function args kwargs
flask_restplus.api.render_doc [] None

COOKIES Variables

No COOKIE data

SESSION Variables

No SESSION data

GET Variables

Variable Value

POST Variables

Variable Value
Close

Config

Key Value
APP_PATH '/opt/web_app'
APPLICATION_ENV 'ci'
APPLICATION_ROOT '/'
CONTROFFER_DIRECTORY '/opt/controffer'
DEBUG True
DEBUG_TB_ENABLED True
DEBUG_TB_HOSTS ()
DEBUG_TB_INTERCEPT_REDIRECTS False
DEBUG_TB_PANELS ('flask_debugtoolbar.panels.versions.VersionDebugPanel', 'flask_debugtoolbar.panels.timer.TimerDebugPanel', 'flask_debugtoolbar.panels.headers.HeaderDebugPanel', 'flask_debugtoolbar.panels.request_vars.RequestVarsDebugPanel', 'flask_debugtoolbar.panels.config_vars.ConfigVarsDebugPanel', 'flask_debugtoolbar.panels.template.TemplateDebugPanel', 'flask_debugtoolbar.panels.sqlalchemy.SQLAlchemyDebugPanel', 'flask_debugtoolbar.panels.logger.LoggingPanel', 'flask_debugtoolbar.panels.route_list.RouteListDebugPanel', 'flask_debugtoolbar.panels.profiler.ProfilerDebugPanel')
DEBUG_TB_PROFILER_ENABLED True
ENV 'development'
EXPLAIN_TEMPLATE_LOADING False
FAILED_CALLBACK_DELAY_QUEUE_NAME 'PY_FUNC_MS_failed-callback-delay'
FAILED_CALLBACK_QUEUE_NAME 'PY_FUNC_MS_failed-callback'
FLASK_APP 'app'
FUNCTIONS_DIRECTORY '/opt/functions'
INSTALLER_QUEUE_NAME 'PY_FUNC_MS_function-install'
JSON_AS_ASCII True
JSON_SORT_KEYS True
JSONIFY_MIMETYPE 'application/json'
JSONIFY_PRETTYPRINT_REGULAR False
MAX_CONTENT_LENGTH None
MAX_COOKIE_SIZE 4093
MODEL_DIRECTORY '/opt/model'
PERMANENT_SESSION_LIFETIME datetime.timedelta(31)
PREFERRED_URL_SCHEME 'http'
PRESERVE_CONTEXT_ON_EXCEPTION None
PROPAGATE_EXCEPTIONS None
RABBITMQ_HOST 'py_func_rabbitmq'
RABBITMQ_PASSWORD 'guest'
RABBITMQ_PORT '5672'
RABBITMQ_USERNAME 'guest'
REDIS_HOST 'py_func_redis'
REDIS_PORT 6379
RESEND_CALLBACK True
RESTPLUS_MASK_HEADER 'X-Fields'
RESTPLUS_MASK_SWAGGER True
RULE_DIRECTORY '/opt/rules'
SECRET_KEY 'AVZr98j3yXR~XHH!jmN]LWB,?RR'
SEND_FILE_MAX_AGE_DEFAULT datetime.timedelta(0, 43200)
SENTRY_DSN_TEMPLATE 'https://dc35885706ec477abf410f93d13c80cb@sentry.ts.soscredit.info/4'
SENTRY_ENABLE True
SERVER_NAME None
SESSION_COOKIE_DOMAIN False
SESSION_COOKIE_HTTPONLY True
SESSION_COOKIE_NAME 'session'
SESSION_COOKIE_PATH None
SESSION_COOKIE_SAMESITE None
SESSION_COOKIE_SECURE False
SESSION_REFRESH_EACH_REQUEST True
SQLALCHEMY_BINDS None
SQLALCHEMY_COMMIT_ON_TEARDOWN False
SQLALCHEMY_DATABASE_URI 'postgres://pyfunc:pnh5m2XYFyV5@py_func_postgres:5432/pyfunc'
SQLALCHEMY_ECHO False
SQLALCHEMY_MAX_OVERFLOW None
SQLALCHEMY_NATIVE_UNICODE None
SQLALCHEMY_POOL_RECYCLE None
SQLALCHEMY_POOL_SIZE None
SQLALCHEMY_POOL_TIMEOUT None
SQLALCHEMY_RECORD_QUERIES True
SQLALCHEMY_TRACK_MODIFICATIONS False
TASK_QUEUE_NAME 'PY_FUNC_MS_function-tasks'
TEMP_DIRECTORY '/opt/temp'
TEMPLATES_AUTO_RELOAD None
TESTING True
TRAP_BAD_REQUEST_ERRORS None
TRAP_HTTP_EXCEPTIONS False
USE_X_SENDFILE False
VECTOR_DIRECTORY '/opt/vector'
Close

Templates

swagger-ui.html

Variable Value
g <flask.g of 'app'>
request <Request 'https://py-func.web.ts.soscredit.info/api/doc/' [GET]>
session <SecureCookieSession {}>
specs_url 'https://py-func.web.ts.soscredit.info/api/swagger.json'
title 'REST-API for SOSCREDIT project'
Close

Log Messages

No messages logged.

Close

Route List

URL route Endpoint name HTTP methods Is alias Redirect to
/ frontend.index GET, HEAD, OPTIONS False None
/api/ api.root GET, HEAD, OPTIONS False None
/api/doc/ api.doc GET, HEAD, OPTIONS False None
/api/function-status/ api.function_status_list_resource GET, HEAD, OPTIONS False None
/api/function-status/<int:id> api.function_status_resource GET, HEAD, OPTIONS False None
/api/function-types/ api.function_type_list_resource GET, HEAD, OPTIONS False None
/api/function-types/<int:id> api.function_type_resource GET, HEAD, OPTIONS False None
/api/function-version/ api.function_version_list_resource GET, HEAD, OPTIONS False None
/api/function-version/<int:id> api.function_version_resource DELETE, GET, HEAD, OPTIONS, PUT False None
/api/function-version/test-file/ api.function_version_test_file_resource OPTIONS, POST False None
/api/function-version/test-json/ api.function_version_test_json_resource OPTIONS, POST False None
/api/function/ api.function_list_resource GET, HEAD, OPTIONS, POST False None
/api/function/<int:id> api.function_resource GET, HEAD, OPTIONS, PUT False None
/api/http-callback/ api.http_callback_list_resource GET, HEAD, OPTIONS False None
/api/http-callback/<int:id> api.http_callback_resource GET, HEAD, OPTIONS False None
/api/http-callback/send/<string:process_id> api.send_http_callback_resource OPTIONS, POST False None
/api/interpreter-execution-command/ api.interpret_execution_command_list_resource GET, HEAD, OPTIONS False None
/api/interpreter/ api.interpreter_list_resource GET, HEAD, OPTIONS False None
/api/process-status/ api.process_status_list_resource GET, HEAD, OPTIONS False None
/api/process-status/<int:id> api.process_status_resource GET, HEAD, OPTIONS False None
/api/processing/<fn_type>/ api.post_body_func OPTIONS, POST False None
/api/swagger.json api.specs GET, HEAD, OPTIONS False None
/static/<path:filename> static GET, HEAD, OPTIONS False None
/swaggerui/<path:filename> restplus_doc.static GET, HEAD, OPTIONS False None
Close

View: 2.26ms

Calls Total Time (ms) Per Call (ms) Cumulative Time (ms) Per Call (ms) Function
20 0.28600000000000003 0.0143 0.39599999999999996 0.0198 <werkzeug/urls.py:452(url_quote)>
7 0.119 0.0170 0.6399999999999999 0.0914 <werkzeug/routing.py:797(build)>
6 0.088 0.0147 0.285 0.0475 <werkzeug/urls.py:852(url_join)>
3 0.082 0.0273 0.082 0.0273 {built-in method posix.stat}
7 0.07999999999999999 0.0114 1.1179999999999999 0.1597 <werkzeug/routing.py:1701(build)>
267 0.06899999999999999 0.0003 0.06899999999999999 0.0003 {built-in method builtins.isinstance}
33 0.068 0.0021 1.829 0.0554 <flask_restplus/templates/swagger-ui.html:5(root)>
12 0.06499999999999999 0.0054 0.105 0.0087 <werkzeug/urls.py:404(url_parse)>
7 0.058 0.0083 1.337 0.1910 <flask/helpers.py:216(url_for)>
40 0.052 0.0013 0.092 0.0023 <werkzeug/local.py:160(top)>
62 0.052 0.0008 0.052 0.0008 {built-in method builtins.hasattr}
203 0.039999999999999994 0.0002 0.039999999999999994 0.0002 {method 'append' of 'bytearray' objects}
7 0.03799999999999999 0.0054 0.058 0.0083 <werkzeug/datastructures.py:393(__init__)>
14/7 0.037 0.0026 0.698 0.0997 <werkzeug/routing.py:1680(_partial_build)>
7 0.037 0.0053 0.051 0.0073 <jinja2/environment.py:466(getattr)>
40 0.034999999999999996 0.0009 0.039999999999999994 0.0010 <werkzeug/local.py:68(__getattr__)>
54 0.032999999999999995 0.0006 0.06 0.0011 {built-in method builtins.getattr}
12 0.031 0.0026 0.06899999999999999 0.0057 {built-in method markupsafe._speedups.escape}
12 0.03 0.0025 0.041 0.0034 <werkzeug/_compat.py:160(normalize_string_tuple)>
7 0.029 0.0041 0.034999999999999996 0.0050 <flask/app.py:2030(inject_url_defaults)>
22 0.027 0.0012 0.11499999999999999 0.0052 <werkzeug/local.py:300(_get_current_object)>
2 0.026 0.0130 0.121 0.0605 <flask/json/__init__.py:92(_dump_arg_defaults)>
3 0.026 0.0087 0.044 0.0147 <jinja2/utils.py:415(__getitem__)>
3 0.024999999999999998 0.0083 0.05499999999999999 0.0183 <jinja2/runtime.py:183(__init__)>
14 0.024 0.0017 0.041 0.0029 <werkzeug/_compat.py:183(to_bytes)>
6 0.023 0.0038 1.259 0.2098 <jinja2/runtime.py:260(call)>
60 0.023 0.0004 0.023 0.0004 {method 'encode' of 'str' objects}
16/2 0.023 0.0014 1.847 0.9235 {method 'join' of 'str' objects}
10 0.020999999999999998 0.0021 0.029 0.0029 <flask/wrappers.py:161(blueprint)>
18 0.020999999999999998 0.0012 0.149 0.0083 <werkzeug/local.py:344(__getattr__)>
3 0.018999999999999996 0.0063 0.172 0.0573 <jinja2/environment.py:846(_load_template)>
26 0.018999999999999996 0.0007 0.018999999999999996 0.0007 {built-in method __new__ of type object at 0x7f5305498fc0}
20 0.018000000000000002 0.0009 0.041999999999999996 0.0021 <werkzeug/_compat.py:192(to_native)>
14 0.018000000000000002 0.0013 0.039999999999999994 0.0029 <markupsafe/__init__.py:70(__new__)>
7 0.016 0.0023 0.016 0.0023 <werkzeug/routing.py:839(suitable_for)>
7 0.016 0.0023 0.028 0.0040 <werkzeug/routing.py:1613(get_host)>
2 0.016 0.0080 0.016 0.0080 <json/encoder.py:204(iterencode)>
11 0.015 0.0014 0.03799999999999999 0.0035 <flask/globals.py:34(_lookup_req_object)>
20 0.015 0.0008 0.015 0.0008 {method 'decode' of 'bytes' objects}
3 0.014 0.0047 0.020999999999999998 0.0070 <jinja2/nodes.py:66(__init__)>
24 0.014 0.0006 0.019999999999999997 0.0008 <werkzeug/_compat.py:155(make_literal_wrapper)>
2 0.014 0.0070 0.046 0.0230 <json/__init__.py:183(dumps)>
144 0.014 0.0001 0.014 0.0001 <werkzeug/_compat.py:18(<lambda>)>
4 0.013 0.0032 0.031 0.0077 <blinker/base.py:285(receivers_for)>
6 0.013 0.0022 0.153 0.0255 <werkzeug/routing.py:940(to_url)>
3 0.013 0.0043 0.068 0.0227 <jinja2/runtime.py:78(new_context)>
13 0.013 0.0010 0.022 0.0017 <werkzeug/_compat.py:127(<lambda>)>
27 0.013 0.0005 0.013 0.0005 {method 'get' of 'dict' objects}
6 0.012 0.0020 1.202 0.2003 <flask_restplus/apidoc.py:28(swagger_static)>
6 0.012 0.0020 0.013 0.0022 <werkzeug/urls.py:898(<listcomp>)>
6 0.011 0.0018 0.44699999999999995 0.0745 <flask_restplus/templates/swagger-ui-css.html:5(root)>
6 0.011 0.0018 0.481 0.0802 <flask_restplus/templates/swagger-ui-libs.html:5(root)>
1 0.011 0.0110 2.086 2.0860 <flask/templating.py:122(render_template)>
2 0.011 0.0055 0.179 0.0895 <flask/json/__init__.py:167(dumps)>
11 0.011 0.0010 0.032999999999999995 0.0030 <flask/globals.py:48(_find_app)>
3 0.011 0.0037 0.186 0.0620 <jinja2/environment.py:862(get_template)>
3 0.011 0.0037 0.012 0.0040 <eventlet/semaphore.py:65(acquire)>
19 0.011 0.0006 0.011 0.0006 {method 'split' of 'str' objects}
7 0.009999999999999998 0.0014 0.012 0.0017 <werkzeug/_compat.py:198(to_unicode)>
30 0.009999999999999998 0.0003 0.009999999999999998 0.0003 {method 'pop' of 'dict' objects}
1 0.009000000000000001 0.0090 1.9619999999999997 1.9620 <flask/templating.py:113(_render)>
1 0.009000000000000001 0.0090 0.056 0.0560 <blinker/base.py:266(<listcomp>)>
1 0.009000000000000001 0.0090 0.020999999999999998 0.0210 <flask/app.py:773(update_template_context)>
6 0.009000000000000001 0.0015 0.037 0.0062 <werkzeug/urls.py:492(url_unparse)>
2 0.009000000000000001 0.0045 0.027 0.0135 <json/encoder.py:182(encode)>
17 0.009000000000000001 0.0005 0.009000000000000001 0.0005 {method 'rsplit' of 'str' objects}
28 0.009000000000000001 0.0003 0.009000000000000001 0.0003 {built-in method builtins.iter}
2 0.008 0.0040 0.06499999999999999 0.0325 <blinker/base.py:241(send)>
3 0.008 0.0027 0.098 0.0327 <jinja2/loaders.py:190(uptodate)>
12 0.008 0.0007 0.015 0.0013 <string>:12(__new__)
3 0.008 0.0027 0.09 0.0300 <genericpath.py:53(getmtime)>
1 0.007 0.0070 0.009999999999999998 0.0100 <flask_restplus/api.py:442(endpoint)>
1 0.007 0.0070 2.26 2.2600 <flask_restplus/api.py:368(render_doc)>
1 0.007 0.0070 2.2529999999999997 2.2530 <flask_restplus/apidoc.py:33(ui_for)>
3 0.007 0.0023 0.007 0.0023 <blinker/_saferef.py:219(__call__)>
3 0.007 0.0023 0.105 0.0350 <jinja2/environment.py:1200(is_up_to_date)>
2 0.006 0.0030 0.20099999999999998 0.1005 <flask/json/__init__.py:326(tojson_filter)>
2 0.006 0.0030 0.18999999999999997 0.0950 <flask/json/__init__.py:217(htmlsafe_dumps)>
7 0.006 0.0009 0.006 0.0009 <werkzeug/routing.py:1347(update)>
7 0.006 0.0009 0.011 0.0016 <jinja2/runtime.py:234(resolve_or_missing)>
1 0.006 0.0060 1.888 1.8880 <jinja2/environment.py:1076(render)>
3 0.006 0.0020 0.074 0.0247 <jinja2/environment.py:1136(new_context)>
43 0.006 0.0001 0.006 0.0001 {built-in method greenlet.getcurrent}
12 0.006 0.0005 0.006 0.0005 {method 'find' of 'str' objects}
3 0.004999999999999999 0.0017 0.016 0.0053 <flask_debugtoolbar/panels/template.py:39(_store_template_info)>
3 0.004999999999999999 0.0017 0.006 0.0020 <flask/app.py:763(select_jinja_autoescape)>
7 0.004999999999999999 0.0007 0.004999999999999999 0.0007 <jinja2/runtime.py:150(resolve_or_missing)>
7 0.004999999999999999 0.0007 0.004999999999999999 0.0007 <jinja2/runtime.py:714(__init__)>
2 0.004999999999999999 0.0025 0.004999999999999999 0.0025 <json/encoder.py:104(__init__)>
16 0.004999999999999999 0.0003 0.004999999999999999 0.0003 {method 'items' of 'dict' objects}
8 0.004999999999999999 0.0006 0.004999999999999999 0.0006 {method 'replace' of 'str' objects}
7 0.004999999999999999 0.0007 0.004999999999999999 0.0007 {method 'lstrip' of 'str' objects}
4 0.004 0.0010 0.029 0.0073 <werkzeug/local.py:326(__bool__)>
1 0.004 0.0040 0.008 0.0080 <blinker/_utilities.py:113(hashable_identity)>
12 0.004 0.0003 0.004 0.0003 <werkzeug/routing.py:1770(<genexpr>)>
3 0.004 0.0013 0.004 0.0013 <jinja2/filters.py:423(do_default)>
3 0.004 0.0013 0.048 0.0160 <jinja2/utils.py:378(get)>
23 0.004 0.0002 0.004 0.0002 {method 'append' of 'list' objects}
1 0.003 0.0030 0.15999999999999998 0.1600 <flask_restplus/api.py:448(specs_url)>
1 0.003 0.0030 0.011 0.0110 <flask_debugtoolbar/panels/template.py:72(is_editor_enabled)>
1 0.003 0.0030 0.007 0.0070 <flask/templating.py:19(_default_template_ctx_processor)>
3 0.003 0.0010 0.003 0.0010 <jinja2/runtime.py:194(<genexpr>)>
1 0.003 0.0030 0.088 0.0880 <jinja2/environment.py:921(get_or_select_template)>
3 0.003 0.0010 0.006 0.0020 <jinja2/_compat.py:19(<lambda>)>
3 0.003 0.0010 0.003 0.0010 <eventlet/semaphore.py:131(release)>
1 0.003 0.0030 0.003 0.0030 {method 'format' of 'str' objects}
10 0.003 0.0003 0.003 0.0003 {built-in method builtins.len}
1 0.002 0.0020 0.002 0.0020 <jinja2/runtime.py:749(__getattr__)>
3 0.002 0.0007 0.002 0.0007 <jinja2/environment.py:943(make_globals)>
9 0.002 0.0002 0.002 0.0002 {built-in method builtins.callable}
3 0.002 0.0007 0.002 0.0007 {method 'remove' of 'collections.deque' objects}
2 0.001 0.0005 0.001 0.0005 <jinja2/runtime.py:249(get_all)>
1 0.001 0.0010 0.001 0.0010 <jinja2/runtime.py:810(__str__)>
2 0.001 0.0005 0.001 0.0005 <jinja2/runtime.py:820(__nonzero__)>
4 0.001 0.0003 0.001 0.0003 {method 'setdefault' of 'dict' objects}
2 0.001 0.0005 0.001 0.0005 {method 'update' of 'dict' objects}
6 0.001 0.0002 0.001 0.0002 {method 'add' of 'set' objects}
1 0.001 0.0010 0.001 0.0010 {method 'copy' of 'set' objects}
3 0.001 0.0003 0.001 0.0003 {method 'endswith' of 'str' objects}
12 0.001 0.0001 0.001 0.0001 {built-in method builtins.next}
3 0.001 0.0003 0.001 0.0003 {method 'append' of 'collections.deque' objects}
1 0.0 0.0000 0.001 0.0010 <jinja2/tests.py:33(test_defined)>
2 0.0 0.0000 0.0 0.0000 <jinja2/environment.py:834(join_path)>
4 0.0 0.0000 0.0 0.0000 <markupsafe/__init__.py:77(__html__)>
1 0.0 0.0000 0.0 0.0000 {method 'disable' of '_lsprof.Profiler' objects}
1 0.0 0.0000 0.0 0.0000 {method 'copy' of 'dict' objects}
1 0.0 0.0000 0.0 0.0000 {built-in method builtins.id}