| RT | Client | Replies missed | Subject |
|---|---|---|---|
| 55040 | Internal | Check for Security Notices and System Updates | |
| 55061 | Internal | Check for Security Notices and System Updates | |
| 55018 | Kahootz | 06 Jun, 10 Jun | Disk errors on Oscar |
| 55079 | AskBio | NTP service on edb-lab-skye.askbio.com | |
| 55064 | Sucden | legolas.sucden.co.uk backups issue | |
| 55073 | OGT | CRITICAL: Networking: SSH on basil.internal.ogtip.com | |
| 55077 | Internal | Check for Security Notices and System Updates | |
| 55088 | Internal | Check for Security Notices and System Updates | |
| 55066 | Internal | Check for Security Notices and System Updates | |
| 55092 | eTherapeutics | etx/prod/devtools failing pods | |
| 55057 | Globecast | gcukscheddb01/dev.globecastne.com multipath issue | |
| 55032 | BD Group | CRITICAL: HTTP: www.1stformations.co.uk HTTP on ef-v5-nodes.c.ef-platform.internal | |
| 54991 | AskBio | NTP failing | macleod.synpromics.com | |
| 55086 | AskBio | Load average on Skye | |
| 54995 | Azura | 08 Jun | Storage alert: /var on ocado2.opentrk.com |
| 55078 | Edinburgh University | DOWN: mathsgpu3.maths.ed.ac.uk | |
| 55087 | BD Group | EFSRV-19807 Web site availability issues |
git hash: master (c8fe59db)
Current Site Packages Directory:
/app/.venv/lib/python3.14/site-packages
| Package | Version | Homepage | Summary |
|---|---|---|---|
| alchemical | 1.0.2 | None | Modern SQLAlchemy simplified |
| alembic | 1.17.2 | None | A database migration tool for SQLAlchemy. |
| annotated-types | 0.7.0 | None | Reusable constraint types to use with typing.Annotated |
| anyio | 4.11.0 | None | High-level concurrency and networking framework on top of asyncio or Trio |
| asttokens | 3.0.1 | https://github.com/gristlabs/asttokens | Annotate AST trees with source code positions |
| backoff | 2.2.1 | https://github.com/litl/backoff | Function decoration for backoff and retry |
| blinker | 1.9.0 | None | Fast, simple object-to-object and broadcast signaling |
| Bootstrap-Flask | 2.5.0 | None | Bootstrap 4 & 5 helper for your Flask projects. |
| certifi | 2025.11.12 | https://github.com/certifi/python-certifi | Python package for providing Mozilla's CA Bundle. |
| charset-normalizer | 3.4.4 | None | The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet. |
| click | 8.3.1 | None | Composable command line interface toolkit |
| colorlog | 6.10.1 | https://github.com/borntyping/python-colorlog | Add colours to the output of Python's logging module. |
| decorator | 5.2.1 | None | Decorators for Humans |
| executing | 2.2.1 | https://github.com/alexmojaki/executing | Get the currently executing AST node of a frame, and other information |
| Flask | 3.1.2 | None | A simple framework for building complex web applications. |
| Flask-DebugToolbar | 0.16.0 | None | A toolbar overlay for debugging Flask applications. |
| Flask-DebugToolbar-LineProfilerPanel | 1.0.2 | https://github.com/phleet/flask_debugtoolbar_lineprofilerpanel | Panel for the Flask Debug toolbar to capture and view line-by-line profiling stats |
| Flask-Migrate | 4.1.0 | None | SQLAlchemy database migrations for Flask applications using Alembic. |
| Flask-SQLAlchemy | 3.1.1 | None | Add SQLAlchemy support to your Flask application. |
| Flask-WTF | 1.2.2 | None | Form rendering, validation, and CSRF protection for Flask with WTForms. |
| freezegun | 1.5.5 | https://github.com/spulec/freezegun | Let your Python tests travel through time |
| gql | 4.0.0 | https://github.com/graphql-python/gql | GraphQL client for Python |
| graphql-core | 3.2.7 | https://github.com/graphql-python/graphql-core | GraphQL implementation for Python, a port of GraphQL.js, the JavaScript reference implementation for GraphQL. |
| greenlet | 3.2.4 | https://greenlet.readthedocs.io/ | Lightweight in-process concurrent programming |
| gunicorn | 23.0.0 | None | WSGI HTTP Server for UNIX |
| h11 | 0.16.0 | https://github.com/python-hyper/h11 | A pure-Python, bring-your-own-I/O implementation of HTTP/1.1 |
| httpcore | 1.0.9 | None | A minimal low-level HTTP client. |
| httpx | 0.28.1 | None | The next generation HTTP client. |
| idna | 3.11 | None | Internationalized Domain Names in Applications (IDNA) |
| ilock | 1.0.3 | https://github.com/symonsoft/ilock | Inter-process named lock library |
| ipython | 9.8.0 | None | IPython: Productive Interactive Computing |
| ipython_pygments_lexers | 1.1.1 | None | Defines a variety of Pygments lexers for highlighting IPython code. |
| itsdangerous | 2.2.0 | None | Safely pass data to untrusted environments and back. |
| jedi | 0.19.2 | https://github.com/davidhalter/jedi | An autocompletion tool for Python that can be used for text editors. |
| Jinja2 | 3.1.6 | None | A very fast and expressive template engine. |
| librt | 0.6.2 | None | Mypyc runtime library |
| line_profiler | 5.0.0 | https://github.com/pyutils/line_profiler | Line-by-line profiler |
| Mako | 1.3.10 | https://www.makotemplates.org/ | A super-fast templating language that borrows the best ideas from the existing templating languages. |
| MarkupSafe | 3.0.3 | None | Safely add untrusted strings to HTML/XML markup. |
| matplotlib-inline | 0.2.1 | None | Inline Matplotlib backend for Jupyter |
| multidict | 6.7.0 | https://github.com/aio-libs/multidict | multidict implementation |
| mypy | 1.19.0 | None | Optional static typing for Python |
| mypy_extensions | 1.1.0 | None | Type system extensions for programs checked with the mypy type checker. |
| packaging | 25.0 | None | Core utilities for Python packages |
| parso | 0.8.5 | https://github.com/davidhalter/parso | A Python Parser |
| pathspec | 0.12.1 | None | Utility library for gitignore style pattern matching of file paths. |
| pdbp | 1.8.1 | https://github.com/mdmintz/pdbp | pdbp (Pdb+): A drop-in replacement for pdb and pdbpp. |
| pexpect | 4.9.0 | https://pexpect.readthedocs.io/ | Pexpect allows easy control of interactive console applications. |
| portalocker | 3.2.0 | None | Wraps the portalocker recipe for easy usage |
| prompt_toolkit | 3.0.52 | None | Library for building powerful interactive command lines in Python |
| propcache | 0.4.1 | https://github.com/aio-libs/propcache | Accelerated property cache |
| psycopg | 3.3.1 | None | PostgreSQL database adapter for Python |
| psycopg-binary | 3.3.1 | None | PostgreSQL database adapter for Python -- C optimisation distribution |
| ptyprocess | 0.7.0 | https://github.com/pexpect/ptyprocess | Run a subprocess in a pseudo terminal |
| pure_eval | 0.2.3 | http://github.com/alexmojaki/pure_eval | Safely evaluate AST nodes without side effects |
| pydantic | 2.12.5 | None | Data validation using Python type hints |
| pydantic_core | 2.41.5 | https://github.com/pydantic/pydantic-core | Core functionality for Pydantic validation and serialization |
| Pygments | 2.19.2 | None | Pygments is a syntax highlighting package written in Python. |
| python-dateutil | 2.9.0.post0 | https://github.com/dateutil/dateutil | Extensions to the standard Python datetime module |
| python-dotenv | 1.2.1 | None | Read key-value pairs from a .env file and set them as environment variables |
| pytz | 2025.2 | http://pythonhosted.org/pytz | World timezone definitions, modern and historical |
| requests | 2.32.5 | https://requests.readthedocs.io | Python HTTP for Humans. |
| requests-toolbelt | 1.0.0 | https://toolbelt.readthedocs.io/ | A utility belt for advanced users of python-requests |
| rt | 3.4.0 | None | Python interface to Request Tracker API |
| six | 1.17.0 | https://github.com/benjaminp/six | Python 2 and 3 compatibility utilities |
| sniffio | 1.3.1 | None | Sniff out which async library your code is running under |
| SQLAlchemy | 2.0.44 | https://www.sqlalchemy.org | Database Abstraction Library |
| stack-data | 0.6.3 | http://github.com/alexmojaki/stack_data | Extract data from python stack frames and tracebacks for informative displays |
| stackprinter | 0.2.12 | https://github.com/cknd/stackprinter | Debug-friendly stack traces, with variable values and semantic highlighting |
| tabcompleter | 1.4.0 | https://github.com/mdmintz/tabcompleter | tabcompleter --- Autocompletion in the Python console. |
| traitlets | 5.14.3 | None | Traitlets Python configuration system |
| types-pytz | 2025.2.0.20251108 | None | Typing stubs for pytz |
| typing-inspection | 0.4.2 | None | Runtime typing introspection tools |
| typing_extensions | 4.15.0 | None | Backported and Experimental Type Hints for Python 3.9+ |
| urllib3 | 2.5.0 | None | HTTP library with thread-safe connection pooling, file post, and more. |
| wcwidth | 0.2.14 | https://github.com/jquast/wcwidth | Measures the displayed width of unicode strings in a terminal |
| Werkzeug | 3.1.3 | None | The comprehensive WSGI web application library. |
| WTForms | 3.2.1 | None | Form validation and rendering for Python web development. |
| yarl | 1.22.0 | https://github.com/aio-libs/yarl | Yet another URL library |
| Resource | Value |
|---|---|
| User CPU time | 54.759 msec |
| System CPU time | 7.745 msec |
| Total CPU time | 62.504 msec |
| Elapsed time | 79.610 msec |
| Context switches | 20 voluntary, 8 involuntary |
| Key | Value |
|---|---|
| HTTP_ACCEPT | */* |
| HTTP_ACCEPT_ENCODING | gzip, br, zstd, deflate |
| HTTP_HOST | dashboard.uat.tigr.uk |
| HTTP_USER_AGENT | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| QUERY_STRING | end=2025-06-13&start=2025-06-09 |
| REMOTE_ADDR | 10.42.58.147 |
| REQUEST_METHOD | GET |
| SCRIPT_NAME | |
| SERVER_NAME | 0.0.0.0 |
| SERVER_PORT | 8000 |
| SERVER_PROTOCOL | HTTP/1.1 |
| SERVER_SOFTWARE | gunicorn/23.0.0 |
| View Function | kwargs |
|---|---|
| app.views.ops_reports.client_updates_report_drilldown | queue=Incidents |
| Variable | Value |
|---|
No SESSION data
| Variable | Value |
|---|---|
| 'end' | '2025-06-13' |
| 'start' | '2025-06-09' |
| Variable | Value |
|---|
| Variable | Value |
|---|---|
| g | <flask.g of 'app'> |
| meta | {'title': 'Client updates report (Incidents)', 'start': datetime.date(2025, 6, 9), 'end': datetime.date(2025, 6, 13)} |
| request | <Request 'http://dashboard.uat.tigr.uk/client_updates_report_drilldown/Incidents?end=2025-06-13&start=2025-06-09' [GET]> |
| session | <SecureCookieSession {}> |
| tickets | [<Ticket(id=5745, rt_number=55040, queue=Incidents, subject=Check for Security Notices and System Updates, ticket_status=closed, client=Internal, priority=41, created=2025-06-09 00:00:04, last_txn_id=0>, <Ticket(id=5766, rt_number=55061, queue=Incidents, subject=Check for Security Notices and System Updates, ticket_status=closed, client=Internal, priority=41, created=2025-06-10 00:00:02, last_txn_id=0>, <Ticket(id=5722, rt_number=55018, queue=Incidents, subject=Disk errors on Oscar, ticket_status=closed, client=Kahootz, priority=62, created=2025-06-05 09:35:11, last_txn_id=0>, <Ticket(id=5784, rt_number=55079, queue=Incidents, subject=NTP service on edb-lab-skye.askbio.com, ticket_status=closed, client=AskBio, priority=81, created=2025-06-12 08:22:51, last_txn_id=0>, <Ticket(id=5769, rt_number=55064, queue=Incidents, subject=legolas.sucden.co.uk backups issue, ticket_status=closed, client=Sucden, priority=61, created=2025-06-10 08:08:09, last_txn_id=0>, <Ticket(id=5778, rt_number=55073, queue=Incidents, subject=CRITICAL: Networking: SSH on basil.internal.ogtip.com, ticket_status=closed, client=OGT, priority=31, created=2025-06-11 15:11:12, last_txn_id=0>, <Ticket(id=5782, rt_number=55077, queue=Incidents, subject=Check for Security Notices and System Updates, ticket_status=closed, client=Internal, priority=41, created=2025-06-12 00:00:02, last_txn_id=0>, <Ticket(id=5793, rt_number=55088, queue=Incidents, subject=Check for Security Notices and System Updates, ticket_status=closed, client=Internal, priority=41, created=2025-06-13 00:00:02, last_txn_id=0>, <Ticket(id=5771, rt_number=55066, queue=Incidents, subject=Check for Security Notices and System Updates, ticket_status=closed, client=Internal, priority=41, created=2025-06-11 00:00:02, last_txn_id=0>, <Ticket(id=5797, rt_number=55092, queue=Incidents, subject=etx/prod/devtools failing pods, ticket_status=closed, client=eTherapeutics, priority=51, created=2025-06-13 13:22:15, last_txn_id=0>, <Ticket(id=5762, rt_number=55057, queue=Incidents, subject=gcukscheddb01/dev.globecastne.com multipath issue, ticket_status=closed, client=Globecast, priority=61, created=2025-06-09 12:39:35, last_txn_id=0>, <Ticket(id=5736, rt_number=55032, queue=Incidents, subject=CRITICAL: HTTP: www.1stformations.co.uk HTTP on ef-v5-nodes.c.ef-platform.internal, ticket_status=closed, client=BD Group, priority=2, created=2025-06-06 07:43:33, last_txn_id=0>, <Ticket(id=5663, rt_number=54991, queue=Incidents, subject=NTP failing | macleod.synpromics.com, ticket_status=closed, client=AskBio, priority=82, created=2025-06-02 08:46:05, last_txn_id=0>, <Ticket(id=5791, rt_number=55086, queue=Incidents, subject=Load average on Skye, ticket_status=closed, client=AskBio, priority=61, created=2025-06-12 15:52:58, last_txn_id=0>, <Ticket(id=5667, rt_number=54995, queue=Incidents, subject=Storage alert: /var on ocado2.opentrk.com, ticket_status=closed, client=Azura, priority=52, created=2025-06-02 13:14:09, last_txn_id=0>, <Ticket(id=5783, rt_number=55078, queue=Incidents, subject=DOWN: mathsgpu3.maths.ed.ac.uk, ticket_status=closed, client=Edinburgh University, priority=41, created=2025-06-12 08:07:47, last_txn_id=0>, <Ticket(id=5792, rt_number=55087, queue=Incidents, subject=EFSRV-19807 Web site availability issues, ticket_status=closed, client=BD Group, priority=91, created=2025-06-12 18:57:36, last_txn_id=0>] |
The toolbar was unable to fetch the SQLAlchemy queries for this request. To enable the SQLAlchemy query display, please:
The Flask-SQLAlchemy extension needs to be configured for this application. Please see the Flask-SQLAlchemy documentation for details.
| Level | Time | Message | Location |
|---|---|---|---|
| DEBUG | 2025-12-06 16:03:01.552305 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552360 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552375 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552384 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552392 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552410 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552422 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552432 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552441 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552450 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552460 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552470 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552480 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552489 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552499 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552507 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552513 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552519 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552526 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552532 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552538 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552544 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552550 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552556 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552564 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552575 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552585 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552591 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552598 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552605 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552614 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552623 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552631 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552640 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552649 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552659 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552668 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552676 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552683 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552691 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552697 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552703 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552710 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552716 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552722 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552728 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552733 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552739 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552745 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552751 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552757 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552763 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552769 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552780 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552788 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552793 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552798 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552804 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552809 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552814 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552821 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552828 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552835 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552840 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552845 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552851 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552855 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552861 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552867 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552875 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552882 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552889 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552895 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552900 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552905 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552909 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552914 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552920 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552925 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552930 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552935 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552939 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552945 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552953 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552960 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552968 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552973 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552978 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552983 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552989 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552994 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.552999 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.553004 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.553009 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.553014 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.553019 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.553024 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.553029 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.553034 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.553040 | xxx | ./services/model.py:838 |
| DEBUG | 2025-12-06 16:03:01.553045 | xxx | ./services/model.py:838 |
from flask_debugtoolbar_lineprofilerpanel.profile import line_profile
# Using it as a decorator
@app.route('/profile')
@line_profile
def profile_page():
...
return flask.render_template('profile_page')
# Explicit argument
line_profile(some_function)