A metric is a collection of costs (memory, network, CPU, ...) associated with some function calls. Blackfire offers some built-in metrics, but you can also create your custom metrics.
You can define the performance expectations of your projects by setting an
expected metric value, on a given metric dimension, in assertions. To write an assertion on a specific dimension, append the
dimension name to the metric name, separated with a ..
For instance, for the sql.queries metric, the number of calls is stored in
the metrics.sql.queries.count and the memory usage in
metrics.sql.queries.peak_memory. To check that you don't have more than 10
SQL queries in an assertion, you would write metrics.sql.queries.count <= 10.
The available dimensions for metrics are the following ones.
countwall_timecpu_timememorypeak_memorynetwork_innetwork_outioHere is the list of built-in metrics that are always available in assertions:
metrics.amqp
                        - AMQP
                                    metrics.amqp.config
                        - AMQP Configuration
                                    metrics.amqp.connections
                        - AMQP Connections
                                    metrics.amqp.connections.go
                        - AMQP Connections (go)
                                    metrics.amqp.librabbitmq.connections
                        - librabbitmq Connections (celery/librabbitmq)
                                    metrics.amqp.messages
                        - AMQP Messages
                                    metrics.amqp.messages.go
                        - AMQP Messages (go)
                                    metrics.amqp.phpamqp.config
                        - AMQP Configuration (pdezwart/php-amqp)
                                    metrics.amqp.phpamqp.connections
                        - AMQP Connections (pdezwart/php-amqp)
                                    metrics.amqp.phpamqp.messages
                        - AMQP Messages (pdezwart/php-amqp)
                                    metrics.amqp.phpamqplib.config
                        - AMQP Configuration (videlalvaro/php-amqplib)
                                    metrics.amqp.phpamqplib.connections
                        - AMQP Connections (videlalvaro/php-amqplib)
                                    metrics.amqp.phpamqplib.messages
                        - AMQP Messages (videlalvaro/php-amqplib)
                                    metrics.amqp.pika.connections
                        - pika Connections (pika/pika)
                                    metrics.amqp.pyamqp.connections
                        - pyamqp Connections (celery/py-amqp)
                                    metrics.api_platform.installed
                        - API Platform installed?
                                    metrics.api_platform2.installed
                        - API Platform 2 installed?
                                    metrics.assetic.controller.calls
                        - Assetic Asset Renderer
                                    metrics.aura.installed
                        - Aura PHP installed
                                    metrics.badger
                        - Badger
                                    metrics.badger.read
                        - Badger Reads
                                    metrics.badger.transaction
                        - Badger Transactions
                                    metrics.badger.write
                        - Badger Writes
                                    metrics.bbolt
                        - BBolt
                                    metrics.bbolt.read
                        - BBolt Reads
                                    metrics.bbolt.transaction
                        - BBolt Transactions
                                    metrics.bbolt.write
                        - BBolt Writes
                                    metrics.blackfire.add_marker
                        - Blackfire Markers
                                    metrics.blackfire.sdk.probe
                        - Blackfire SDK Instrumentation
                                    metrics.blackfire.span
                        - Blackfire Spans
                                    metrics.bolt.application.construct
                        - Bolt CMS Application Construct
                                    metrics.bolt.application.initialize
                        - Bolt CMS Application Initialize
                                    metrics.bolt.providers
                        - Bolt CMS Service Providers Registration
                                    metrics.cache
                        - Cache
                                    metrics.cache.delete
                        - Cache Delete
                                    metrics.cache.flush
                        - Cache Flush
                                    metrics.cache.get
                        - Cache Get
                                    metrics.cache.has
                        - Cache Has
                                    metrics.cache.set
                        - Cache Set
                                    metrics.cassandra
                        - Cassandra
                                    metrics.cassandra.query
                        - Cassandra Query
                                    metrics.cassandra.query.go
                        - Cassandra Query
                                    metrics.celery.python
                        - Celery
                                    metrics.code_igniter.installed
                        - Code Igniter installed?
                                    metrics.commonmark.parse.parsedown
                        - Markdown Parser (thephpleague/commonmark)
                                    metrics.compile
                        - Compiled Scripts
                                    metrics.composer.autoload.find_file
                        - Composer ClassLoader File Finder
                                    metrics.crypto
                        - Cryptographic events
                                    metrics.crypto.cipher
                        - Create a new block cipher
                                    metrics.crypto.decrypt
                        - Decrypt data
                                    metrics.crypto.defuse
                        - Defuse crypto library
                                    metrics.crypto.defuse.decrypt
                        - Defuse crypto library decryption
                                    metrics.crypto.defuse.encrypt
                        - Defuse crypto library encryption
                                    metrics.crypto.encrypt
                        - Encrypt data
                                    metrics.crypto.mcrypt
                        - Mcrypt Functions
                                    metrics.crypto.sign
                        - Sign a hash
                                    metrics.crypto.sum
                        - Checksum
                                    metrics.crypto.verify
                        - Verify signature
                                    metrics.cs_cart.installed
                        - CS-Cart installed?
                                    metrics.django
                        - Django
                                    metrics.django.auth
                        - Django auth
                                    metrics.django.authentication
                        - Django auth
                                    metrics.django.authorization
                        - Django authorization
                                    metrics.django.cache
                        - Django Cache
                                    metrics.django.cache.backends.db.delete
                        - Django Cache
                                    metrics.django.cache.backends.db.get
                        - Django Cache
                                    metrics.django.cache.backends.db.set
                        - Django Cache
                                    metrics.django.cache.backends.filebased.delete
                        - Django Cache
                                    metrics.django.cache.backends.filebased.get
                        - Django Cache
                                    metrics.django.cache.backends.filebased.set
                        - Django Cache
                                    metrics.django.cache.backends.locmem.delete
                        - Django Cache
                                    metrics.django.cache.backends.locmem.get
                        - Django Cache
                                    metrics.django.cache.backends.locmem.set
                        - Django Cache
                                    metrics.django.cached_template_loader
                        - Django Cached Template Loader enabled
                                    metrics.django.clickjacking_protection
                        - Django Clickjacking middleware enabled
                                    metrics.django.csrf_protection
                        - Django CSRF middleware enabled
                                    metrics.django.models.created
                        - A Django model object is created
                                    metrics.django.models.queryset
                        - Django Models QuerySet usage
                                    metrics.django.models.sql_compilation
                        - Django Models SQL compilation
                                    metrics.django.security_middleware
                        - Django Security middleware enabled
                                    metrics.django.serializer.deserialize
                        - Django Serializer deserialize
                                    metrics.django.serializer.serialize
                        - Django Serializer serialize
                                    metrics.django.sessions
                        - Django Sessions
                                    metrics.django.sessions.backends.cache
                        - Django sessions cache backend
                                    metrics.django.sessions.backends.cached_db
                        - Django sessions cached_db backend
                                    metrics.django.sessions.backends.db
                        - Django sessions DB backend
                                    metrics.django.sessions.backends.file
                        - Django sessions file backend
                                    metrics.django.sessions.cache
                        - Django cached sessions
                                    metrics.django.signals
                        - Django Signals
                                    metrics.django.signals.auth
                        - Django auth signals
                                    metrics.django.signals.core
                        - Django core signals
                                    metrics.django.signals.db
                        - Django db signals
                                    metrics.django.template
                        - Django templates
                                    metrics.django.template.compile
                        - Django template compilation
                                    metrics.django.template.engine.django
                        - Django inner template engine
                                    metrics.django.template.engine.jinja2
                        - Jinja2 template engine for Django
                                    metrics.django.template.render
                        - Django template rendering
                                    metrics.django.views
                        - Django views
                                    metrics.django.views.class_based
                        - Django class-based views
                                    metrics.django.views.function_based
                        - Django function-based views
                                    metrics.django.wsgi
                        - Django WSGI handling
                                    metrics.django.wsgi.resolve_request
                        - Django WSGI resolve request
                                    metrics.django.wsgi.view_process
                        - Django WSGI view process
                                    metrics.doctrine.annotations.parsed
                        - Doctrine Annotation Parser
                                    metrics.doctrine.annotations.read
                        - Doctrine Annotation Reader
                                    metrics.doctrine.cache.delete
                        - Doctrine Cache Delete
                                    metrics.doctrine.cache.flush
                        - Doctrine Cache Clear
                                    metrics.doctrine.cache.get
                        - Doctrine Cache Get
                                    metrics.doctrine.cache.has
                        - Doctrine Cache Has
                                    metrics.doctrine.cache.set
                        - Doctrine Cache Set
                                    metrics.doctrine.dql.parsed
                        - Doctrine DQL Parser
                                    metrics.doctrine.entities.created
                        - A Doctrine entity is created
                                    metrics.doctrine.entities.hydrated
                        - One or more Doctrine entities is hydrated (turned into an object)
                                    metrics.doctrine.entities.metadata
                        - Doctrine Metadata Loader
                                    metrics.doctrine.event_manager.dispatch
                        - Doctrine Event Dispatcher
                                    metrics.doctrine.orm.find
                        - Doctrine EntityRepository find
                                    metrics.doctrine.orm.flush
                        - Doctrine EntityManager Flushes
                                    metrics.doctrine.paginator.dql.parsed
                        - Doctrine Paginator using the Doctrine DQL Parser
                                    metrics.doctrine.paginator.fetch_join_collection
                        - Doctrine Paginator used with fetchJoinCollection
                                    metrics.doctrine.proxies.generated
                        - Doctrine Proxy Generator
                                    metrics.doctrine.proxies.loaded
                        - Doctrine Proxy Lazy-Loader
                                    metrics.drupal7.block.access
                        - Drupal Block Viewer
                                    metrics.drupal7.block_cache.construct
                        - Drupal Block Cache
                                    metrics.drupal7.cache.fake
                        - Drupal Fake Cache
                                    metrics.drupal7.cron.automated
                        - Drupal Cron Run via Web
                                    metrics.drupal7.cron.drush
                        - Drupal Cron Run via Drush
                                    metrics.drupal7.cron.run
                        - Drupal Cron Run
                                    metrics.drupal7.dblog
                        - Drupal Database Logger
                                    metrics.drupal7.drush
                        - Drupal Drush
                                    metrics.drupal7.entity_load.any
                        - Drupal Entity Loader
                                    metrics.drupal7.fast_404
                        - Drupal Fast 404
                                    metrics.drupal7.fast_cache
                        - Drupal APC Cache
                                    metrics.drupal7.installed
                        - Is Drupal 7 installed?
                                    metrics.drupal7.module.contrib.loaded
                        - Drupal Contrib Module Loader
                                    metrics.drupal7.module.panels.installed
                        - Panels Module Installed
                                    metrics.drupal7.page_cache_anonymous.construct
                        - Drupal Page Cache anonymous
                                    metrics.drupal7.page_cache_authenticated.construct
                        - Drupal Page Cache authenticated
                                    metrics.drupal7.panels.cached
                        - Cached Panels
                                    metrics.drupal7.panels.render
                        - Panels Renderer
                                    metrics.drupal7.php.load
                        - Drupal PHP File Loader
                                    metrics.drupal7.preprocess.css
                        - Drupal CSS Aggregator
                                    metrics.drupal7.preprocess.js
                        - Drupal JS Aggregator
                                    metrics.drupal7.session.anonymous
                        - Drupal Anonymous Session
                                    metrics.drupal7.theme.debug
                        - Drupal Theme Debugger
                                    metrics.drupal7.views.uncached
                        - Drupal Uncached Views
                                    metrics.drupal8.block.access
                        - Drupal Block Access Checker
                                    metrics.drupal8.cache.null
                        - Drupal Null Cache
                                    metrics.drupal8.cache.views
                        - Drupal Uncached Views
                                    metrics.drupal8.cron.drush
                        - Drupal Cron Run via Drush
                                    metrics.drupal8.cron.requested
                        - Drupal Cron Run via Web
                                    metrics.drupal8.cron.run
                        - Drupal Cron Run
                                    metrics.drupal8.dblog
                        - Drupal Database Logger
                                    metrics.drupal8.drush
                        - Drupal Drush
                                    metrics.drupal8.dynamic_page_cache.construct
                        - Dynamic drupal Page Cache
                                    metrics.drupal8.entity_load.content
                        - Drupal Content Entities Loader
                                    metrics.drupal8.fast_cache
                        - Drupal APCu Cache
                                    metrics.drupal8.help_module.construct
                        - Help module
                                    metrics.drupal8.installed
                        - Is Drupal 8 installed?
                                    metrics.drupal8.module.loaded.contrib
                        - Drupal Contrib Module Loader
                                    metrics.drupal8.page_cache.construct
                        - Drupal Page Cache
                                    metrics.drupal8.php.load
                        - Drupal PHP File Loader
                                    metrics.drupal8.preprocess.css
                        - Drupal CSS Asset Resolver
                                    metrics.drupal8.preprocess.js
                        - Drupal JavaScript Asset Resolver
                                    metrics.drupal8.twig.debug
                        - Drupal Twig Debugger
                                    metrics.drupal8.twig_cache.construct
                        - Twig Cache
                                    metrics.drupal8.update_module.construct
                        - Update manager module
                                    metrics.elasticsearch
                        - Elasticsearch
                                    metrics.elasticsearch.elastica.logs
                        - Elastica Logs
                                    metrics.elasticsearch.elastica.queries
                        - Elastica Queries
                                    metrics.elasticsearch.elasticsearch.queries
                        - Elasticsearch Queries
                                    metrics.elasticsearch.queries
                        - Elasticsearch Queries
                                    metrics.elasticsearch.queries.go
                        - Elasticsearch Queries
                                    metrics.elasticsearch.queries.python
                        - Elasticsearch Queries
                                    metrics.emails
                        - Mailer
                                    metrics.emails.sent
                        - Mails Sent
                                    metrics.emails.sent.go
                        - Go Emails Sent
                                    metrics.emails.sent.mandrill
                        - Mandrill Emails Sent
                                    metrics.emails.sent.php
                        - PHP Emails Sent
                                    metrics.emails.sent.php_mailer
                        - PHPMailer Emails Sent
                                    metrics.emails.sent.swiftmailer
                        - Swiftmailer Emails Sent
                                    metrics.emails.sent.symfony_mailer
                        - Symfony Mailer Emails Sent
                                    metrics.entities.created
                        - Database entities created
                                    metrics.ezplatform.controller.view_controller
                        - ezplatform.controller.view_controller metric is deprecated in favor of ibexa.controller.view_controller one
                                    metrics.ezplatform.controller.view_controller_deprecated_calls
                        - ezplatform.controller.view_controller_deprecated_calls metric is deprecated in favor of ibexa.controller.view_controller_deprecated_calls one
                                    metrics.ezplatform.core.persistence.content_handler.read_only_uncached_calls
                        - ezplatform.core.persistence.content_handler.read_only_uncached_calls metric is deprecated in favor of ibexa.core.persistence.content_handler.read_only_uncached_calls one
                                    metrics.ezplatform.core.persistence.content_language_handler.read_only_uncached_calls
                        - ezplatform.core.persistence.content_language_handler.read_only_uncached_calls metric is deprecated in favor of ibexa.core.persistence.content_language_handler.read_only_uncached_calls one
                                    metrics.ezplatform.core.persistence.content_type_handler.read_only_uncached_calls
                        - ezplatform.core.persistence.content_type_handler.read_only_uncached_calls metric is deprecated in favor of ibexa.core.persistence.content_type_handler.read_only_uncached_calls one
                                    metrics.ezplatform.core.persistence.handlers
                        - ezplatform.core.persistence.handlers metric is deprecated in favor of ibexa.core.persistence.handlers one
                                    metrics.ezplatform.core.persistence.legacy.handlers
                        - ezplatform.core.persistence.legacy.handlers metric is deprecated in favor of ibexa.core.persistence.legacy.handlers one
                                    metrics.ezplatform.core.persistence.location_handler.read_only_uncached_calls
                        - ezplatform.core.persistence.location_handler.read_only_uncached_calls metric is deprecated in favor of ibexa.core.persistence.location_handler.read_only_uncached_calls one
                                    metrics.ezplatform.core.persistence.object_state_handler.read_only_uncached_calls
                        - ezplatform.core.persistence.object_state_handler.read_only_uncached_calls metric is deprecated in favor of ibexa.core.persistence.object_state_handler.read_only_uncached_calls one
                                    metrics.ezplatform.core.persistence.section_handler.read_only_uncached_calls
                        - ezplatform.core.persistence.section_handler.read_only_uncached_calls metric is deprecated in favor of ibexa.core.persistence.section_handler.read_only_uncached_calls one
                                    metrics.ezplatform.core.persistence.trash_handler.read_only_uncached_calls
                        - ezplatform.core.persistence.trash_handler.read_only_uncached_calls metric is deprecated in favor of ibexa.core.persistence.trash_handler.read_only_uncached_calls one
                                    metrics.ezplatform.core.persistence.url_alias_handler.read_only_uncached_calls
                        - ezplatform.core.persistence.url_alias_handler.read_only_uncached_calls metric is deprecated in favor of ibexa.core.persistence.url_alias_handler.read_only_uncached_calls one
                                    metrics.ezplatform.core.persistence.url_wildcard.read_only_uncached_calls
                        - ezplatform.core.persistence.url_wildcard.read_only_uncached_calls metric is deprecated in favor of ibexa.core.persistence.url_wildcard.read_only_uncached_calls one
                                    metrics.ezplatform.core.persistence.user_handler.read_only_uncached_calls
                        - ezplatform.core.persistence.user_handler.read_only_uncached_calls metric is deprecated in favor of ibexa.core.persistence.user_handler.read_only_uncached_calls one
                                    metrics.ezplatform.core.repository.services
                        - ezplatform.core.repository.services metric is deprecated in favor of ibexa.core.repository.services one
                                    metrics.ezplatform.installed
                        - eZ Platform installed?
                                    metrics.ezplatform.signal_slot_dispatcher.emit
                        - ezplatform.signal_slot_dispatcher.emit metric is deprecated in favor of ibexa.signal_slot_dispatcher.emit one
                                    metrics.ezplatform.template.fields
                        - ezplatform.template.fields metric is deprecated in favor of ibexa.template.fields one
                                    metrics.fos_elastica_bundle
                        - FOS Elastica bundle installed?
                                    metrics.fos_http_cache_bundle
                        - FOS HttpCache Bundle installed?
                                    metrics.fos_message_bundle
                        - FOS Message bundle installed?
                                    metrics.fos_rest_bundle
                        - FOS Rest Bundle installed?
                                    metrics.fos_user_bundle
                        - FOS User bundle installed?
                                    metrics.gorm.create
                        - GORM Create
                                    metrics.gorm.delete
                        - GORM Delete
                                    metrics.gorm.read
                        - GORM Read
                                    metrics.gorm.update
                        - GORM Update
                                    metrics.graph_ql
                        - GraphQL is used
                                    metrics.grpc
                        - Google RPC
                                    metrics.grpc.receive
                        - GRPC Receive message
                                    metrics.grpc.receive.go
                        - grpc-go Receive message
                                    metrics.grpc.send
                        - GRPC Send message
                                    metrics.grpc.send.go
                        - grpc-go Send message
                                    metrics.http.curl.requests
                        - cURL HTTP Requests
                                    metrics.http.exif.requests
                        - Exif HTTP Requests
                                    metrics.http.gd.requests
                        - GD HTTP Requests
                                    metrics.http.go.requests
                        - requests HTTP Requests
                                    metrics.http.gorilla.requests
                        - requests HTTP Requests
                                    metrics.http.iris.requests
                        - requests HTTP Requests
                                    metrics.http.php_stream.requests
                        - PHP Stream HTTP Requests
                                    metrics.http.requests
                        - HTTP Requests
                                    metrics.http.ruby.http.requests
                        - HTTP Requests
                                    metrics.http.soap.requests
                        - SOAP HTTP Requests
                                    metrics.http.socket.requests
                        - Socket HTTP Requests
                                    metrics.hwi_oauth_bundle
                        - HWI OAuth Bundle installed?
                                    metrics.ibexa.controller.view_controller
                        - Ibexa [MVC] View Controller
                                    metrics.ibexa.controller.view_controller_deprecated_calls
                        - Ibexa [MVC] View Controller
                                    metrics.ibexa.core.persistence.content_handler.read_only_uncached_calls
                        - Ibexa [SPI] Persistence Cache ContentHandler - read-only uncached calls
                                    metrics.ibexa.core.persistence.content_language_handler.read_only_uncached_calls
                        - Ibexa [SPI] Persistence Cache ContentLanguageHandler - read-only uncached calls
                                    metrics.ibexa.core.persistence.content_type_handler.read_only_uncached_calls
                        - Ibexa [SPI] Persistence Cache ContentTypeHandler - read-only uncached calls
                                    metrics.ibexa.core.persistence.handlers
                        - Ibexa [SPI] Persistence Cache Handlers
                                    metrics.ibexa.core.persistence.legacy.handlers
                        - Ibexa [SPI] Persistence Legacy (Database) Handlers
                                    metrics.ibexa.core.persistence.location_handler.read_only_uncached_calls
                        - Ibexa [SPI] Persistence Cache LocationHandler - read-only uncached calls
                                    metrics.ibexa.core.persistence.object_state_handler.read_only_uncached_calls
                        - Ibexa [SPI] Persistence Cache ObjectStateHandler - read-only uncached calls
                                    metrics.ibexa.core.persistence.section_handler.read_only_uncached_calls
                        - Ibexa [SPI] Persistence Cache SectionHandler - read-only uncached calls
                                    metrics.ibexa.core.persistence.trash_handler.read_only_uncached_calls
                        - Ibexa [SPI] Persistence Cache TrashHandler - read-only uncached calls
                                    metrics.ibexa.core.persistence.url_alias_handler.read_only_uncached_calls
                        - Ibexa [SPI] Persistence Cache UrlAliasHandler - read-only uncached calls
                                    metrics.ibexa.core.persistence.url_wildcard.read_only_uncached_calls
                        - Ibexa [SPI] Persistence Cache UrlWildcard - read-only uncached calls
                                    metrics.ibexa.core.persistence.user_handler.read_only_uncached_calls
                        - Ibexa [SPI] Persistence Cache UserHandler - read-only uncached calls
                                    metrics.ibexa.core.repository.services
                        - Ibexa [API] Repository Service method calls
                                    metrics.ibexa.installed
                        - Ibexa installed?
                                    metrics.ibexa.signal_slot_dispatcher.emit
                        - Ibexa [API] Repository Signal Slot Dispatcher
                                    metrics.ibexa.template.fields
                        - Ibexa [MVC] Content Field Render
                                    metrics.jms.serializer.deserialize
                        - JMS Serializer deserialize
                                    metrics.jms.serializer.serialize
                        - JMS Serializer serialize
                                    metrics.kafka
                        - Kafka
                                    metrics.kafka.config
                        - Kafka Configuration
                                    metrics.kafka.consume
                        - Kafka Consume
                                    metrics.kafka.misc
                        - Kafka Miscellaneous Operations
                                    metrics.kafka.php_rdkafka.config
                        - Kafka Configuration
                                    metrics.kafka.php_rdkafka.consume
                        - PHP Rdkafka Consume
                                    metrics.kafka.php_rdkafka.misc
                        - Kafka Miscellaneous Operations
                                    metrics.kafka.php_rdkafka.produce
                        - PHP Rdkafka Produce
                                    metrics.kafka.produce
                        - Kafka Produce
                                    metrics.kafka.sarama.consume
                        - sarama Consume
                                    metrics.kafka.sarama.produce
                        - sarama Produce
                                    metrics.kohana.installed
                        - Kohanna framework installed?
                                    metrics.laravel
                        - Laravel framework
                                    metrics.laravel.cache
                        - Laravel Cache
                                    metrics.laravel.cache.apc
                        - Laravel APC cache store
                                    metrics.laravel.cache.array
                        - Laravel Array (in-memory) cache store
                                    metrics.laravel.cache.array_config_default
                        - Laravel Cache array default driver
                                    metrics.laravel.cache.database
                        - Laravel Database cache store
                                    metrics.laravel.cache.dynamodb
                        - Laravel DynamoDB cache store
                                    metrics.laravel.cache.file
                        - Laravel File cache store
                                    metrics.laravel.cache.memcached
                        - Laravel Memcached cache store
                                    metrics.laravel.cache.null
                        - Laravel Null cache store
                                    metrics.laravel.cache.null_config_default
                        - Laravel Cache null default driver
                                    metrics.laravel.cache.redis
                        - Laravel Redis cache store
                                    metrics.laravel.config.load
                        - Laravel configuration loading
                                    metrics.laravel.database.hydration
                        - Laravel Database hydration
                                    metrics.laravel.debug
                        - Laravel debug mode
                                    metrics.laravel.debug_bar.enable
                        - Laravel enable debug bar
                                    metrics.laravel.debug_bar.middleware
                        - Laravel debug bar middleware
                                    metrics.laravel.eloquent.models.created
                        - A Laravel Eloquent Model object is created
                                    metrics.laravel.eloquent.models.relationships
                        - Laravel Eloquent Model Relationships
                                    metrics.laravel.eloquent.models.relationships.eager_loaded
                        - Relationships eager loaded
                                    metrics.laravel.eloquent.models.relationships.lazy_loaded
                        - Relationships lazy loaded
                                    metrics.laravel.event_dispatcher
                        - Laravel Event Dispatcher
                                    metrics.laravel.installed
                        - Laravel installed?
                                    metrics.laravel.kernel.bootstrap
                        - Laravel kernel bootstrap
                                    metrics.laravel.log
                        - Laravel Log
                                    metrics.laravel.middleware.add_queued_cookies_to_response
                        - Laravel add queued cookies to response middleware
                                    metrics.laravel.middleware.authenticate
                        - Laravel authenticate middleware
                                    metrics.laravel.middleware.authenticate_basic
                        - Laravel authenticate basic middleware
                                    metrics.laravel.middleware.authorize
                        - Laravel authorize middleware
                                    metrics.laravel.middleware.check_for_maintenance
                        - Laravel check for maintenance middleware
                                    metrics.laravel.middleware.csrf
                        - Laravel CSRF middleware
                                    metrics.laravel.middleware.encrypt_cookie
                        - Laravel encrypt cookie middleware
                                    metrics.laravel.middleware.session
                        - Laravel session middleware
                                    metrics.laravel.middleware.share_errors
                        - Laravel share errors from session middleware
                                    metrics.laravel.middleware.substiture_bindings
                        - Laravel binding substitution middleware
                                    metrics.laravel.middleware.throttle_requests
                        - Laravel throttle requests middleware
                                    metrics.laravel.queues.dispatch
                        - Laravel Queues Dispatch
                                    metrics.laravel.queues.dispatch.async
                        - Laravel Queues Asynchronous Dispatch
                                    metrics.laravel.queues.dispatch.sync
                        - Laravel Queues Synchronous Dispatch
                                    metrics.laravel.queues.sync_config_default
                        - Laravel Queues sync default config
                                    metrics.laravel.route.load
                        - Laravel routes loading
                                    metrics.laravel.router.dispatch
                        - Laravel router dispatch
                                    metrics.laravel.router.prepare_response
                        - Laravel router prepare response
                                    metrics.laravel.router.route_run
                        - Laravel route run
                                    metrics.laravel.view.compile
                        - Laravel view compilation
                                    metrics.laravel.view.render
                        - Laravel view render
                                    metrics.laravel.workbench_starter
                        - Laravel Workbench starter
                                    metrics.leveldb
                        - LevelDB
                                    metrics.leveldb.read
                        - LevelDB Reads
                                    metrics.leveldb.write
                        - LevelDB Writes
                                    metrics.logs.browser
                        - Logs sent to the browser
                                    metrics.logs.log_call
                        - Log Calls
                                    metrics.magento1.action.catalog_category_view
                        - Action catalog_category_view (category page)
                                    metrics.magento1.action.catalog_product_view
                        - Action catalog_product_view (product page)
                                    metrics.magento1.action.checkout_cart_index
                        - Action checkout_cart_index (cart page)
                                    metrics.magento1.action.cms_index_index
                        - Action cms_index_index (homepage)
                                    metrics.magento1.action.cms_page_view
                        - Action cms_page_view (any CMS page)
                                    metrics.magento1.all.installed
                        - Is Magento 1 installed?
                                    metrics.magento1.block.cache.load.get_cache_key
                        - Get block's cache key during cache load
                                    metrics.magento1.collection.cache.load
                        - Load the collection cache
                                    metrics.magento1.collection.cache.unserialize
                        - Unserialize the collection cache
                                    metrics.magento1.collection.load
                        - Collection load
                                    metrics.magento1.collection.product.load
                        - Collection Product load
                                    metrics.magento1.config.read
                        - Read the configuration
                                    metrics.magento1.controller.checkout_onepage
                        - Any action on the checkout's onepage
                                    metrics.magento1.controller.customer_account
                        - Any action on the customer's account
                                    metrics.magento1.customer.logged_in
                        - Load the customer of the current session
                                    metrics.magento1.ee.installed
                        - Is Magento 1 EE installed?
                                    metrics.magento1.events
                        - Fire Magento event
                                    metrics.magento1.layout.update.save_cache
                        - Load layout updates by handles
                                    metrics.magento1.model.load
                        - Model load
                                    metrics.magento1.model.product.load
                        - Model Product load
                                    metrics.magento1.translate.cache.load
                        - Load the translation cache
                                    metrics.magento1.translate.cache.unserialize
                        - Unserialize the translation cache
                                    metrics.magento2.all.action.catalog_category_view
                        - Action catalog_category_view (category page)
                                    metrics.magento2.all.action.catalog_product_view
                        - Action catalog_product_view (product page)
                                    metrics.magento2.all.action.checkout_cart_index
                        - Action checkout_cart_index (cart page)
                                    metrics.magento2.all.action.cms_index_index
                        - Action cms_index_index (homepage)
                                    metrics.magento2.all.action.cms_page_view
                        - Action cms_page_view (any CMS page)
                                    metrics.magento2.all.cache.any.save
                        - Any cache save
                                    metrics.magento2.all.cache.block.save.action
                        - Save (and not ask to) a block in cache
                                    metrics.magento2.all.cache.block.save.call
                        - Ask to save a block in cache
                                    metrics.magento2.all.cache.clean.action
                        - Clean a cache, only if it's enabled
                                    metrics.magento2.all.cache.clean.call
                        - Ask to clean a cache, even if it's not enabled
                                    metrics.magento2.all.cache.ddl.read
                        - Read in DB information which should be in cache
                                    metrics.magento2.all.cache.eav.read
                        - Read EAV entity types in database
                                    metrics.magento2.all.cache.full_page.builtin.hit
                        - Hit full page cache using builtin
                                    metrics.magento2.all.cache.layout.read
                        - Read of Layout files
                                    metrics.magento2.all.cache.reflection.read
                        - Read Reflection data
                                    metrics.magento2.all.cache.translate.read
                        - Read Translation file
                                    metrics.magento2.all.collection.add_attribute_to_select.wildcard
                        - Add attributes to entities in collection with a wildcard
                                    metrics.magento2.all.collection.load
                        - Collection load
                                    metrics.magento2.all.collection.product.load
                        - Collection Product load
                                    metrics.magento2.all.config.css.merge_css_files.enabled
                        - Merge of CSS files is enabled
                                    metrics.magento2.all.config.di.read
                        - Configuration DI read [from disk]
                                    metrics.magento2.all.config.js.enable_js_bundling.enabled
                        - The config dev/js/enable_js_bundling is enabled
                                    metrics.magento2.all.config.js.merge_js_files.enabled
                        - Merge of JS files is enabled
                                    metrics.magento2.all.controller.checkout
                        - Any action on the checkout's onepage
                                    metrics.magento2.all.controller.customer_account
                        - Any action on the customer's account (logged in)
                                    metrics.magento2.all.frontend.blocks.load_cache.hit
                        - Load cache hit for blocks
                                    metrics.magento2.all.frontend.blocks.to_html
                        - Number of blocks displayed
                                    metrics.magento2.all.frontend.blocks.with_lifetime
                        - Blocks which have a lifetime
                                    metrics.magento2.all.installed
                        - Is Magento 2 installed?
                                    metrics.magento2.all.logger.db
                        - DB Logger
                                    metrics.magento2.all.mode.default
                        - Application Mode default
                                    metrics.magento2.all.mode.developer
                        - Application Mode developer
                                    metrics.magento2.all.mode.production
                        - Application Mode production
                                    metrics.magento2.all.model.cms_page.load
                        - Model CMS Page load
                                    metrics.magento2.all.model.load
                        - Model load
                                    metrics.magento2.all.model.product.load
                        - Model Product load
                                    metrics.magento2.all.profiler
                        - Profiler
                                    metrics.magento2.backend.admin.front_name
                        - Magento admin URL path
                                    metrics.magento2.cache.block_html
                        - Magento block HTML cache status
                                    metrics.magento2.cache.collections
                        - Magento collections cache status
                                    metrics.magento2.cache.compiled_config
                        - Magento compiled config cache status
                                    metrics.magento2.cache.config
                        - Magento config cache status
                                    metrics.magento2.cache.config_integration
                        - Magento config_integration cache status
                                    metrics.magento2.cache.config_integration_api
                        - Magento config integration API cache status
                                    metrics.magento2.cache.config_webservice
                        - Magento config webservice cache status
                                    metrics.magento2.cache.db_ddl
                        - Magento db ddl cache status
                                    metrics.magento2.cache.eav
                        - Magento eav cache status
                                    metrics.magento2.cache.full_page
                        - Magento full page cache status
                                    metrics.magento2.cache.layout
                        - Magento layout cache status
                                    metrics.magento2.cache.reflection
                        - Magento reflection cache status
                                    metrics.magento2.cache.translate
                        - Magento translate cache status
                                    metrics.magento2.ee.installed
                        - Is Magento 2 EE installed?
                                    metrics.magento2.events
                        - Fire Magento event
                                    metrics.magento2.interceptors
                        - Magento interceptors
                                    metrics.magento2.session.db
                        - Magento session save in db
                                    metrics.magento2.session.files
                        - Magento session save in files
                                    metrics.magento2.session.redis
                        - Magento session save in redis
                                    metrics.magento2.template.render
                        - Template rendering
                                    metrics.main
                        - Main node
                                    metrics.markdown
                        - Markdown
                                    metrics.markdown.parse
                        - Markdown Parser
                                    metrics.markdown.parse.parsedown
                        - Markdown Parser (erusev/parsedown)
                                    metrics.memcache
                        - Memcache
                                    metrics.memcache.config
                        - Memcache Config
                                    metrics.memcache.config.php
                        - Memcache Config
                                    metrics.memcache.connections
                        - Memcache Connections
                                    metrics.memcache.connections.php
                        - Memcache Connections
                                    metrics.memcache.connections.python
                        - Memcache Connections
                                    metrics.memcache.misc
                        - Memcache Miscellaneous Operations
                                    metrics.memcache.misc.php
                        - Memcache Miscellaneous Operations
                                    metrics.memcache.queries
                        - Memcache Queries
                                    metrics.memcache.queries.php
                        - Memcache Queries
                                    metrics.memcache.queries.python
                        - Memcache Queries
                                    metrics.memcached
                        - Memcached
                                    metrics.memcached.config
                        - Memcached Config
                                    metrics.memcached.misc
                        - Memcached Miscellaneous Operations
                                    metrics.memcached.php.config
                        - Memcached Configuration
                                    metrics.memcached.php.misc
                        - Memcached Miscellaneous Operations
                                    metrics.memcached.php.queries
                        - Memcached Queries
                                    metrics.memcached.queries
                        - Memcached Queries
                                    metrics.michelf.parse.parsedown
                        - Markdown Parser (michelf/php-markdown)
                                    metrics.mongodb
                        - MongoDB
                                    metrics.mongodb.config
                        - MongoDB Configuration Operations
                                    metrics.mongodb.connections
                        - MongoDB Connections
                                    metrics.mongodb.go.connections
                        - MongoDB Connections
                                    metrics.mongodb.go.queries
                        - MongoDB Queries
                                    metrics.mongodb.php.config
                        - MongoDB Configuration Operations
                                    metrics.mongodb.php.connections
                        - MongoDB Connections
                                    metrics.mongodb.php.driver_operations
                        - MongoDB Driver Operations
                                    metrics.mongodb.php.queries
                        - MongoDB Queries
                                    metrics.mongodb.python.connections
                        - MongoDB Connections
                                    metrics.mongodb.queries
                        - MongoDB Queries
                                    metrics.monolog.browser_console
                        - Monolog calls to BrowserConsole
                                    metrics.monolog.calls
                        - Monolog calls for warning, notice, info, or debug
                                    metrics.monolog.chromephp
                        - Monolog calls to ChromePHP
                                    metrics.monolog.firephp
                        - Monolog calls to FirePHP
                                    metrics.monolog.php_console
                        - Monolog calls to PHPConsole
                                    metrics.nette.installed
                        - Nette framework installed?
                                    metrics.network
                        - Network events
                                    metrics.network.rpc
                        - Remote procedure calls
                                    metrics.network.rpc.call
                        - Make an RPC call
                                    metrics.network.rpc.receive_call
                        - Receive an RPC call
                                    metrics.network.rpc.receive_response
                        - Receive a response to an RPC call
                                    metrics.network.rpc.respond_call
                        - Respond to an RPC call
                                    metrics.network.tcp
                        - TCP/IP Communications
                                    metrics.network.tcp.dial
                        - Connect to a host
                                    metrics.network.tcp.read
                        - Read from a socket
                                    metrics.network.tcp.write
                        - Write to a socket
                                    metrics.nsq
                        - NSQ
                                    metrics.nsq.consume
                        - NSQ Consume
                                    metrics.nsq.consume.go
                        - NSQ Consume
                                    metrics.nsq.publish
                        - NSQ Publish
                                    metrics.nsq.publish.go
                        - NSQ Publish
                                    metrics.nsq.response
                        - NSQ Response
                                    metrics.nsq.response.go
                        - NSQ Response
                                    metrics.output
                        - Written Bytes
                                    metrics.oxid.rendered.article.widgets
                        - Oxid Article Widgets Rendered
                                    metrics.oxid.rendered.categorytree
                        - Oxid CategoryTree Rendered
                                    metrics.oxid.seo.link.generate
                        - Oxid Generate SEO Link
                                    metrics.oxid.seo.link.uncached
                        - Oxid Uncached SEO Link
                                    metrics.pear.firephp
                        - PEAR log calls to FirePHP
                                    metrics.pear.log.log_call
                        - PEAR log calls for warning, notice, info, or debug
                                    metrics.php
                        - PHP Functions
                                    metrics.php.autoloaded
                        - Autoloaded Classes
                                    metrics.php.eval
                        - eval calls
                                    metrics.php.fastcgi_finish_request
                        - Response flushes
                                    metrics.php.gc
                        - Garbage Collector
                                    metrics.php.shell_exec
                        - Spawn shell commands
                                    metrics.php.uniqid
                        - uniqid calls
                                    metrics.php.uniqid_with_entropy
                        - uniqid with entropy calls
                                    metrics.php_markdown.parse.parsedown
                        - Markdown Parser (dflydev/markdown)
                                    metrics.phpfastcache.cache.delete
                        - phpFastCache Delete
                                    metrics.phpfastcache.cache.flush
                        - phpFastCache Clear
                                    metrics.phpfastcache.cache.get
                        - phpFastCache Get
                                    metrics.phpfastcache.cache.has
                        - phpFastCache Has
                                    metrics.phpfastcache.cache.set
                        - phpFastCache Set
                                    metrics.phpqa.deprecated
                        - Calls to deprecated functions
                                    metrics.phpqa.die
                        - Calls to die or exit
                                    metrics.phpqa.dump
                        - Calls to var_dump(), print_r(), var_export() on STDOUT
                                    metrics.phpqa.e_user_deprecated
                        - Calls to deprecated libraries functions
                                    metrics.phpqa.eval
                        - Calls to eval
                                    metrics.phpqa.ini_settings
                        - Calls to ini_set(), ini_alter(), or ini_restore()
                                    metrics.phpqa.set_time_limit
                        - Calls to set_time_limit
                                    metrics.phpqa.sleep
                        - Calls to sleep or usleep
                                    metrics.prestashop
                        - PrestaShop
                                    metrics.prestashop.container.init_dev
                        - Container builder adapter is created in debug mode
                                    metrics.prestashop.hook.collection
                        - PrestaShop Hook Data Collector
                                    metrics.prestashop.smarty.render_dev
                        - Smarty Dev Mode on PrestaShop
                                    metrics.process
                        - Process related events
                                    metrics.process.go.run
                        - Run external program
                                    metrics.process.php.run
                        - Run external program
                                    metrics.process.run
                        - Run external program
                                    metrics.propel2
                        - Propel2 is used
                                    metrics.protobuf
                        - Protobuf
                                    metrics.protobuf.marshal
                        - Protobuf Marshal
                                    metrics.protobuf.marshal.go
                        - Protobuf Marshal
                                    metrics.protobuf.unmarshal
                        - Protobuf Unmarshal
                                    metrics.protobuf.unmarshal.go
                        - Protobuf Unmarshal
                                    metrics.psr3.calls
                        - PSR3 Logger logs
                                    metrics.python
                        - Python Standard Library Functions
                                    metrics.python.eval
                        - eval functions
                                    metrics.python.http.requests
                        - HTTP Requests
                                    metrics.python.http.requests.no_tls_verification
                        - no TLS certificate verification done for HTTP requests
                                    metrics.python.input_output
                        - IO functions
                                    metrics.python.json
                        - Json Encode/Decode
                                    metrics.python.logging
                        - logging functions
                                    metrics.python.pickle
                        - pickle serialization
                                    metrics.python.range
                        - range
                                    metrics.python.re
                        - Regular expression functions
                                    metrics.python.shell_exec
                        - Spawn shell commands
                                    metrics.python.sleep
                        - sleep
                                    metrics.python.socket
                        - socket functions
                                    metrics.python.ssl.socket
                        - SSL socket functions
                                    metrics.python.subprocess.functions.shell_true
                        - Subprocess functions called with shell=True
                                    metrics.python.thread
                        - Thread functions
                                    metrics.python.yaml.unsafe_load
                        - Unsafe yaml.load
                                    metrics.redis
                        - Redis
                                    metrics.redis.config
                        - Redis Configuration Operations
                                    metrics.redis.connections
                        - Redis Connections
                                    metrics.redis.connections.python
                        - Redis Connections
                                    metrics.redis.goredis.config
                        - go-redis Configuration Calls
                                    metrics.redis.goredis.connections
                        - go-redis Connections
                                    metrics.redis.goredis.queries
                        - go-redis Queries
                                    metrics.redis.misc
                        - Redis Miscellaneous Operations
                                    metrics.redis.non_persistent_connections
                        - Redis Non-Persistent Connections
                                    metrics.redis.persistent_connections
                        - Redis Persistent Connections
                                    metrics.redis.phpredis.config
                        - PHPRedis Configuration Calls
                                    metrics.redis.phpredis.connections
                        - PHPRedis Connections
                                    metrics.redis.phpredis.misc
                        - PHPRedis Miscellaneous Operations
                                    metrics.redis.phpredis.non_persistent_connections
                        - Redis Non-Persistent Connections
                                    metrics.redis.phpredis.persistent_connections
                        - Redis Persistent Connections
                                    metrics.redis.phpredis.queries
                        - PHPRedis Queries
                                    metrics.redis.predis.connections
                        - Predis Connections
                                    metrics.redis.predis.non_persistent_connections
                        - Predis Non-Persistent Connections
                                    metrics.redis.predis.persistent_connections
                        - Predis Persistent Connections
                                    metrics.redis.predis.queries
                        - Predis Queries
                                    metrics.redis.queries
                        - Redis Queries
                                    metrics.redis.queries.python
                        - Redis Queries
                                    metrics.redis.redigo.connections
                        - redigo Connections
                                    metrics.redis.redigo.queries
                        - redigo Queries
                                    metrics.riak
                        - Riak
                                    metrics.riak.basho.queries
                        - Riak Queries with basho/riak
                                    metrics.riak.php_riak.queries
                        - Riak Queries with php_riak
                                    metrics.riak.queries
                        - Riak Queries
                                    metrics.run
                        - Run Scripts
                                    metrics.serializer
                        - Serializers
                                    metrics.serializer.deserialize
                        - Deserialize
                                    metrics.serializer.serialize
                        - Serialize
                                    metrics.shopware.events
                        - Shopware Events
                                    metrics.shopware.filtered_events
                        - Shopware Filtered Events
                                    metrics.shopware.get_resources
                        - Shopware Resources
                                    metrics.shopware.link_generations
                        - Shopware Link Generations
                                    metrics.shopware.rendering
                        - Shopware Templates Rendering
                                    metrics.shopware.routing
                        - Shopware Routing
                                    metrics.shopware6
                        - Shopware 6
                                    metrics.shopware6.admin
                        - Shopware 6 Administration
                                    metrics.shopware6.admin_worker
                        - Shopware 6 Admin Worker
                                    metrics.shopware6.all.installed
                        - Shopware 6 installed?
                                    metrics.shopware6.configuration.read
                        - Shopware 6 Configuration Read
                                    metrics.shopware6.context_creation
                        - Shopware 6 Context Creation
                                    metrics.shopware6.dal.search
                        - Shopware 6 DAL Search
                                    metrics.shopware6.http_cache
                        - Shopware 6 HTTP Cache
                                    metrics.shopware6.page.checkout.cart
                        - Shopware 6 Cart Page
                                    metrics.shopware6.page.checkout.confirm
                        - Shopware 6 Order Confirm Page
                                    metrics.shopware6.page.content
                        - Shopware 6 Content Page
                                    metrics.shopware6.page.home
                        - Shopware 6 Home Page
                                    metrics.shopware6.page.product
                        - Shopware 6 Product Page
                                    metrics.shopware6.plugin.initialization
                        - Shopware 6 Plugin Initialization
                                    metrics.shopware6.sales_channel_context_creation
                        - Shopware 6 Sales Channel Context Creation
                                    metrics.shopware6.storefront
                        - Shopware 6 Storefront
                                    metrics.shopware6.storefront.link_generations
                        - Shopware 6 Storefront Link Generation
                                    metrics.shopware6.storefront.product
                        - Shopware 6 Storefront Product
                                    metrics.shopware6.storefront.rendering
                        - Shopware 6 Storefront Rendering
                                    metrics.shopware6.storefront.routing
                        - Shopware 6 Storefront Routing
                                    metrics.silex.application.boot
                        - Silex Application Boot
                                    metrics.silex.application.flush
                        - Silex Application Flush Controllers collection
                                    metrics.silex.application.mount
                        - Silex Application Mount Controllers
                                    metrics.silex.application.terminate
                        - Silex Application Terminate
                                    metrics.silex.installed
                        - Silex installed
                                    metrics.silex.providers
                        - Silex Providers
                                    metrics.slim.installed
                        - Slim installed
                                    metrics.smarty
                        - Smarty
                                    metrics.smarty.compile
                        - Smarty Templates Compilations
                                    metrics.smarty.is_cached
                        - Smarty Templates cache verification
                                    metrics.smarty.read_file
                        - Smarty Templates read cached file
                                    metrics.smarty.template_base
                        - Smarty Templates render template
                                    metrics.solarium.queries
                        - Solarium Queries
                                    metrics.spacy
                        - spaCy metrics
                                    metrics.spacy.doc
                        - spaCy Doc API
                                    metrics.spacy.language
                        - spaCy Language API
                                    metrics.spacy.matcher
                        - spaCy Matcher API
                                    metrics.spacy.phrasematcher
                        - spaCy PhraseMatcher API
                                    metrics.sql
                        - SQL
                                    metrics.sql.clickhouse.queries
                        - ClickHouse Queries
                                    metrics.sql.connections
                        - SQL Connections
                                    metrics.sql.db2.connections
                        - DB2 Connections
                                    metrics.sql.db2.queries
                        - DB2 queries
                                    metrics.sql.django.queries
                        - SQL Queries
                                    metrics.sql.go.queries
                        - SQL Queries
                                    metrics.sql.msql.connections
                        - mSQL Connections
                                    metrics.sql.msql.queries
                        - mSQL Queries
                                    metrics.sql.mssql.connections
                        - MSSQL Connections
                                    metrics.sql.mssql.queries
                        - MSSQL Queries
                                    metrics.sql.mysql.connections
                        - MySQL Connections
                                    metrics.sql.mysql.queries
                        - MySQL Queries
                                    metrics.sql.mysqli.connections
                        - MySQLi Connections
                                    metrics.sql.mysqli.queries
                        - MySQLi Queries
                                    metrics.sql.oci.connections
                        - OCI8 Connections
                                    metrics.sql.oci.queries
                        - OCI8 Queries
                                    metrics.sql.odbc.connections
                        - ODBC Connections
                                    metrics.sql.odbc.queries
                        - ODBC Queries
                                    metrics.sql.pdo.connections
                        - PDO Connections
                                    metrics.sql.pdo.queries
                        - PDO Queries
                                    metrics.sql.postgres.connections
                        - PostgreSQL Connections
                                    metrics.sql.postgres.queries
                        - PostgreSQL Queries
                                    metrics.sql.psycopg.connections
                        - psycopg Connections
                                    metrics.sql.psycopg.queries
                        - psycopg Queries
                                    metrics.sql.psycopg2.connections
                        - psycopg2 Connections
                                    metrics.sql.pymysql.connections
                        - PyMySQL Connections
                                    metrics.sql.pymysql.queries
                        - PyMySQL Queries
                                    metrics.sql.queries
                        - SQL Queries
                                    metrics.sql.ruby.activerecord.queries
                        - SQL Queries
                                    metrics.sql.sqlite.connections
                        - SQLite Connections
                                    metrics.sql.sqlite.queries
                        - SQLite Queries
                                    metrics.sql.sqlite3.connections
                        - sqlite3 Connections
                                    metrics.sql.sqlsrv.connections
                        - SQL Server Connections
                                    metrics.sql.sqlsrv.queries
                        - SQL Server Queries
                                    metrics.sql.sybase.connections
                        - Sybase Connections
                                    metrics.sql.sybase.queries
                        - Sybase Queries
                                    metrics.stash.driver.black_hole
                        - Stash Driver BlackHole
                                    metrics.stash.driver.file_system
                        - Stash Driver FileSystem
                                    metrics.stash.installed
                        - Stash installed?
                                    metrics.sylius
                        - Sylius
                                    metrics.sylius.events.legacy.sonata
                        - Sylius Legacy Template Events (Calls of `sonata_block_render_event` in `_legacySonataEvent.html.twig`)
                                    metrics.sylius.events.sonata
                        - Sylius Sonata Template Events (Calls of `sonata_block_render_event`)
                                    metrics.sylius.events.templates
                        - Sylius Template Events (Calls of sylius_template_event)
                                    metrics.sylius.installed
                        - Sylius is installed
                                    metrics.sylius.version.v1_5
                        - Sylius Version 1.5
                                    metrics.sylius.version.v1_6
                        - Sylius Version 1.6
                                    metrics.sylius.version.v1_7
                        - Sylius Version 1.7
                                    metrics.sylius.version.v1_8
                        - Sylius Version 1.8
                                    metrics.sylius.view.cart
                        - Cart page
                                    metrics.sylius.view.homepage
                        - Sylius Homepage
                                    metrics.sylius.view.login
                        - Login page
                                    metrics.sylius.view.product
                        - Sylius Product page
                                    metrics.sylius.view.register
                        - Register page
                                    metrics.sylius.view.taxon
                        - Sylius Taxon page
                                    metrics.symfony.authentication_provider_manager
                        - Symfony Authentication Provider Manager
                                    metrics.symfony.config_check
                        - Symfony Config Cache Freshness Checks
                                    metrics.symfony.console
                        - Symfony Console
                                    metrics.symfony.console.application_run
                        - Symfony Console Application run
                                    metrics.symfony.controllers
                        - Symfony Controllers
                                    metrics.symfony.controllers.action
                        - Symfony Controller Action
                                    metrics.symfony.controllers.argument_resolver
                        - Symfony Argument Resolving
                                    metrics.symfony.controllers.controller_resolver
                        - Symfony Controller Resolving
                                    metrics.symfony.debug
                        - Symfony Debug
                                    metrics.symfony.dotenv
                        - Symfony Dotenv
                                    metrics.symfony.dotenv.parse
                        - Symfony Dotenv Parsing
                                    metrics.symfony.events
                        - Symfony Dispatched Events
                                    metrics.symfony.firewall
                        - Symfony Firewall
                                    metrics.symfony.http_cache
                        - Symfony HTTP Cache
                                    metrics.symfony.http_cache_esi
                        - Symfony HTTP Cache ESI
                                    metrics.symfony.kernel
                        - Symfony Kernel
                                    metrics.symfony.kernel.boot
                        - Symfony Kernel Boot
                                    metrics.symfony.kernel.debug
                        - Symfony Kernel Debug
                                    metrics.symfony.kernel.handle
                        - Symfony Kernel Handle
                                    metrics.symfony.kernel.initialize_bundles
                        - Symfony Kernel bundles initialization
                                    metrics.symfony.kernel.initialize_container
                        - Symfony Kernel container initialization
                                    metrics.symfony.kernel.load_class_cache
                        - Symfony load classes cache
                                    metrics.symfony.kernel.shutdown
                        - Symfony Kernel shutdown
                                    metrics.symfony.kernel.terminate
                        - Symfony Kernel terminate
                                    metrics.symfony.logger.console
                        - Symfony Console Logger
                                    metrics.symfony.logger.monolog_bridge
                        - Symfony Monolog Bridge
                                    metrics.symfony.param_converter
                        - Symfony Param Converter
                                    metrics.symfony.polyfill
                        - Symfony Polyfills
                                    metrics.symfony.polyfill.apcu
                        - Symfony apcu Polyfill
                                    metrics.symfony.polyfill.iconv
                        - Symfony iconv Polyfill
                                    metrics.symfony.polyfill.intl
                        - Symfony Intl Polyfill
                                    metrics.symfony.polyfill.mbstring
                        - Symfony Mbstring Polyfill
                                    metrics.symfony.polyfill.php54
                        - Symfony PHP 5.4 Polyfill
                                    metrics.symfony.polyfill.php55
                        - Symfony PHP 5.5 Polyfill
                                    metrics.symfony.polyfill.php56
                        - Symfony PHP 5.6 Polyfill
                                    metrics.symfony.polyfill.php70
                        - Symfony PHP 7.0 Polyfill
                                    metrics.symfony.polyfill.php71
                        - Symfony PHP 7.1 Polyfill
                                    metrics.symfony.polyfill.php72
                        - Symfony PHP 7.2 Polyfill
                                    metrics.symfony.polyfill.php73
                        - Symfony PHP 7.3 Polyfill
                                    metrics.symfony.polyfill.php74
                        - Symfony PHP 7.4 Polyfill
                                    metrics.symfony.polyfill.php80
                        - Symfony PHP 8.0 Polyfill
                                    metrics.symfony.polyfill.php81
                        - Symfony PHP 8.1 Polyfill
                                    metrics.symfony.polyfill.php82
                        - Symfony PHP 8.2 Polyfill
                                    metrics.symfony.polyfill.php83
                        - Symfony PHP 8.3 Polyfill
                                    metrics.symfony.polyfill.php84
                        - Symfony PHP 8.4 Polyfill
                                    metrics.symfony.polyfill.xml
                        - Symfony XML Polyfill
                                    metrics.symfony.process.cmds
                        - Process Commands
                                    metrics.symfony.processes
                        - Process Calls
                                    metrics.symfony.routing.loader
                        - Symfony Routing loader
                                    metrics.symfony.routing.route_collection
                        - Symfony Routing route collection
                                    metrics.symfony.routing.router
                        - Symfony Routing router
                                    metrics.symfony.security.access_decision_manager
                        - Symfony Access Decision Manager
                                    metrics.symfony.security.authorization_checker
                        - Symfony Authorization Checker
                                    metrics.symfony.serializer.decode
                        - Symfony Serializer decode
                                    metrics.symfony.serializer.denormalize
                        - Symfony Serializer denormalize
                                    metrics.symfony.serializer.deserialize
                        - Symfony Serializer deserialize
                                    metrics.symfony.serializer.encode
                        - Symfony Serializer encode
                                    metrics.symfony.serializer.normalize
                        - Symfony Serializer normalize
                                    metrics.symfony.serializer.serialize
                        - Symfony Serializer serialize
                                    metrics.symfony.session_listener
                        - Symfony Session listener
                                    metrics.symfony.subrequests
                        - Symfony Subrequests
                                    metrics.symfony.yaml.reads
                        - YAML Reads
                                    metrics.symfony_framework
                        - Symfony Full Stack Framework
                                    metrics.threshold
                        - Significant calls
                                    metrics.twig.attributes.ext.get
                        - Twig Attributes Calls with the C Extension
                                    metrics.twig.attributes.get
                        - Twig Attributes Calls
                                    metrics.twig.attributes.php.get
                        - Twig Attributes Calls from PHP
                                    metrics.twig.compile
                        - Twig Template Compilations
                                    metrics.twig.display
                        - Twig Template Displays
                                    metrics.twig.render
                        - Twig Template Explicit Renders
                                    metrics.typo3.application_run
                        - TYPO3 Application Runner
                                    metrics.typo3.cache.flush
                        - TYPO3 Cache flush
                                    metrics.typo3.cache.get
                        - TYPO3 Cache get
                                    metrics.typo3.cache.has
                        - TYPO3 Cache has
                                    metrics.typo3.cache.remove
                        - TYPO3 Cache remove
                                    metrics.typo3.cache.set
                        - TYPO3 Cache set
                                    metrics.typo3.cache.set_cache
                        - TYPO3 Cache cache initialization
                                    metrics.typo3.content_object_renderer
                        - TYPO3 Content Object Renderer
                                    metrics.typo3.controller
                        - TYPO3 controller
                                    metrics.typo3.deprecation_log
                        - TYPO3 deprecationLog calls
                                    metrics.typo3.dev_log
                        - TYPO3 devLog calls
                                    metrics.typo3.dispatcher
                        - TYPO3 MVC dispatcher
                                    metrics.typo3.fe_condition_matcher_match
                        - TYPO3 Condition Matcher
                                    metrics.typo3.installed
                        - Is TYPO3 installed?
                                    metrics.typo3.int_object
                        - TYPO3 *_INT rendered
                                    metrics.typo3.load.configuration
                        - TYPO3 configuration load
                                    metrics.typo3.load.ext_loaded
                        - TYPO3 extension loaded
                                    metrics.typo3.load.extension_tables
                        - TYPO3 extension tables load
                                    metrics.typo3.load.table_configuration_array_load
                        - TYPO3 table configuration array load
                                    metrics.typo3.logger
                        - TYPO3 Logger
                                    metrics.typo3.mvc_dispatcher
                        - TYPO3 MVC dispatcher
                                    metrics.typo3.set_no_cache
                        - Disabling of complete frontend cache
                                    metrics.typo3.sql.count
                        - TYPO3 Database Connection count
                                    metrics.typo3.sql.delete
                        - TYPO3 Database Connection delete
                                    metrics.typo3.sql.insert
                        - TYPO3 Database Connection insert
                                    metrics.typo3.sql.select
                        - TYPO3 Database Connection select
                                    metrics.typo3.sql.truncate
                        - TYPO3 Database Connection truncate
                                    metrics.typo3.sql.update
                        - TYPO3 Database Connection query
                                    metrics.typo3.user_object
                        - TYPO3 extensions / plugins rendered
                                    metrics.websocket
                        - Web Sockets
                                    metrics.websocket.read
                        - Web Sockets Read
                                    metrics.websocket.read.go
                        - Web Sockets Read
                                    metrics.websocket.write
                        - Web Sockets Write
                                    metrics.websocket.write.go
                        - Web Sockets Write
                                    metrics.woocommerce.installed
                        - Woocommerce installed?
                                    metrics.wordpress
                        - WordPress
                                    metrics.wordpress.apply_filters
                        - WordPress apply_filters
                                    metrics.wordpress.do_action
                        - WordPress do_action
                                    metrics.wordpress.get_footer
                        - WordPress get_footer
                                    metrics.wordpress.get_header
                        - WordPress get_header
                                    metrics.wordpress.get_sidebar
                        - WordPress get_sidebar
                                    metrics.wordpress.get_the_excerpt
                        - WordPress get_the_excerpt
                                    metrics.wordpress.i18n.import_i18n
                        - WordPress import i18n
                                    metrics.wordpress.load_all_options
                        - WordPress load_all_options
                                    metrics.wordpress.load_template
                        - WordPress load_template
                                    metrics.wordpress.rewrite_flush_rules
                        - WordPress Rewrite flush rules
                                    metrics.wordpress.wp_cache_delete
                        - WordPress wp_cache_delete
                                    metrics.wordpress.wp_cache_flush
                        - WordPress wp_cache_flush
                                    metrics.wordpress.wp_cache_get
                        - WordPress wp_cache_get
                                    metrics.wordpress.wp_cache_set
                        - WordPress wp_cache_set
                                    metrics.wordpress.wp_head
                        - WordPress wp_head
                                    metrics.wordpress.wp_nav_menu
                        - WordPress wp_nav_menu
                                    metrics.wordpress.wp_print_footer_scripts
                        - WordPress wp_print_footer_scripts
                                    metrics.wordpress.wp_print_head_scripts
                        - WordPress wp_print_head_scripts
                                    metrics.wordpress.wp_print_styles
                        - WordPress wp_print_styles
                                    metrics.xdebug
                        - XDebug functions
                                    metrics.yii.installed
                        - Yii framework installed?
                                    metrics.zend.config_items
                        - Zend Config Reads
                                    metrics.zend.front_controller
                        - Zend Front Controller
                                    metrics.zend.log.chromephp
                        - Zend Log calls to ChromePHP
                                    metrics.zend.log.firephp
                        - Zend Log calls to FirePHP
                                    metrics.zend.log.log_call
                        - Zend Log Calls for development levels
                                    metrics.zend.reflection
                        - Zend Reflection Uses
                                    metrics.zend.resources
                        - Zend Resources Boot
                                    metrics.zend.routes
                        - Zend Route Matches
                                    metrics.zend.search.lucene.find
                        - ZendSearch Lucene find
                                    metrics.zend.table_metadata
                        - Zend Table Metadata Reads
                                    metrics.zend.view_renderer
                        - Zend View renderer
                                    By default, Blackfire gives access to a large number of built-in metrics, most of them being specific to the language or popular Open-Source libraries. Based on project requirements, custom metrics can also be defined for a project.
Custom metrics can be defined in a .blackfire.yaml file. They consist in a block under the metrics key:
1 2 3 4 5 6 7 8 9 10 11 12
metrics:
    markdown_to_html:
        # Short label for humans
        label: 'Markdown to HTML'
        # Longer description for humans
        description: 'Metric for Markdown to HTML conversion'
        matching_calls:
            php:
                -
                    callee: "=App\\Utils\\Markdown::toHtml"
Custom metrics can also be defined using the PHP SDK.
Besides the identifier (markdown_to_html), a metric must be associated with
function calls, via a metric selector, e.g.
=App\Utils\Markdown::toHtml.
Several function selectors are available and described below.
To apply stricter constraints, you may combine caller and
callee in a single block:
1 2 3 4 5 6 7
metrics:
    markdown_to_html:
        matching_calls:
            php:
                -
                    caller: "=App\\Twig\\AppExtension::markdownToHtml"
                    callee: "=App\\Utils\\Markdown::toHtml"
Caller/callee groups are always considered combined with a boolean AND.
You may chain several blocks of call selectors for a given metric. In that case, these blocks are combined with a boolean OR:
1 2 3 4 5 6 7 8 9 10
metrics:
    markdown_to_html:
        matching_calls:
            php:
                # Each matching call contributes to the total cost of the metric.
                -
                    caller: "=App\\Twig\\AppExtension::markdownToHtml"
                    callee: "=App\\Utils\\Markdown::toHtml"
                -
                    callee: "=App\\Utils\\AlternativeMarkdown::toHtml"
Defining a metric is all about selecting a sub-set of the profile function calls. A selector first character defines how to interpret the rest of the expression:
=: Matches the expression exactly;|: Similar to =, but matches any object that is an instance of the class;^: Matches everything starting with the expression;/: Interprets the expression as a regex that should match;!: Interprets the expression as a regex that should not match.The second part of the selector defines which function calls to match.
Here are some selector examples:
=Class::method: Matches the method function calls on Class;=func: Matches the func function calls;|Psr\Log\LoggerInterface::log: Matches any calls to log on objects
that are an instance of Psr\Log\LoggerInterface;^ArrayObject::: Matches all function calls from the ArrayObject class;^exif_: Matches all function calls for which the function starts with
exif_;/^Class::(method1|method2)$/: Matches method1 and method2 calls
from Class;!^spl_autoload_call$!: Matches any function/method calls but
spl_autoload_call ones.Besides matching nodes, a metric can also be used to aggregate function calls by arguments.
Blackfire aggregates all function calls into one node to make it easy to reason about resources it consumed. But sometimes, being able to have different nodes for a function call depending on one or multiple arguments can help if the arguments make the function behave very differently (e.g. a database function call which is very sensitive to the SQL statement to be executed).
Arguments are displayed in the Call Graph and in the Timeline views.
Arguments capturing only works with the = (`equals`) selector.
When defining arguments capturing, you need to determine:
Which argument(s) to capture with a 1-based index.
If the captured argument is a hash map, you may match a specific key:
1.some_key;
The selector for each argument to capture.
All metric selectors listed above can be used,
except |.
Also, the following selectors are available:
~: Means empty value (or any value representing empty).
This selector can be combined with any of supported selectors, meaning empty or selector.
For example, ~= means empty or specified value (e.g. ~=foo
means "empty or with foo string).
Another example is ~^http, meaning empty or beginning with "http"
string.
Captured arguments are converted into strings by the probe. As such, only string representations are considered:
true or false strings;[] string;App\Foo\Bar.Captured arguments being strings, | cannot apply as a selector.
As Blackfire displays separate nodes for each unique argument, it is also a great way to better understand how the code behaves (for instance, one node per event for an event dispatcher handle method instead of one big node for all events).
Consider the following class:
1 2 3 4 5 6 7 8 9 10
namespace App\Utils;
class Greetings
{
    public function phrase(string $greeting, string $extra): string
    {
        usleep(500000);
        return sprintf('%s %s', $greeting, $extra);
    }
}
Single argument capture
1 2 3 4 5 6 7 8 9 10 11
metrics:
    greetings:
        label: Greetings phrases
        matching_calls:
            php:
                - callee:
                      selector: "=App\\Utils\\Greetings::phrase"
                      argument:
                          # Using "*" as a "catch-all" selector generates
                          # a different node per argument
                          1: "*"
In this example, $greeting argument is captured and therefore discriminates
e.g. Hello from Hi greetings.
Multiple arguments capture
1 2 3 4 5 6 7 8 9 10 11
metrics:
    greetings:
        label: Greetings phrases
        matching_calls:
            php:
                - callee:
                      selector: "=App\\Utils\\Greetings::phrase"
                      argument:
                          # Using Regexp selector.
                          1: "/^(Hello|Hi)/"
                          2: "*"
In this example, $greeting and $extra arguments are both being captured.
Different nodes per arguments combination are generated in the callgraph.
Hash map argument capture
Now consider that phrase() method accepts a hash as an argument:
1 2 3 4 5 6 7 8 9 10
namespace App\Utils;
class Greetings
{
    public function phrase(array $greeting): string
    {
        usleep(500000);
        return sprintf('%s %s', $greeting['greetings'], $greeting['phrase']);
    }
}
1 2 3 4 5 6 7 8 9 10 11
metrics:
    greetings:
        label: Greetings phrases
        matching_calls:
            php:
                - callee:
                      selector: "=App\\Utils\\Greetings::phrase"
                      argument:
                          # Capture is based on hash map keys.
                          1.greetings: "/^(Hello|Hi)/"
                          1.phrase: "*"
In this example, the capture is based on the hash map keys.
1.greetings means "value from greetings key of the first argument",
assuming this argument is an actual hash map.
Named (or keyword) arguments capture
It is possible to capture arguments by their names with the following languages:
1 2 3 4
def greeting_phrase(greeting, extra=""):
    return f'{greeting} {extra}'
greeting_phrase(greeting='Hello', extra='World')
1 2 3 4 5 6 7 8 9 10 11
metrics:
    greetings:
        label: Greetings phrases
        matching_calls:
            python:
                - callee:
                      selector: "=greeting_phrase"
                      argument:
                          # Capturing kwargs
                          greeting: "*"
                          extra: "*"
1 2 3 4 5 6 7 8 9 10 11
function soup(string $vegetable, string $spice = 'no spice', string $cheese = 'no cheese'): string {
    usleep(1000);
    $recipe = "Making soup with $vegetable, $spice and $cheese";
    return "$recipe\n";
}
echo soup('carrot', 'saffron', 'kiri');
echo soup('cucumber', 'mint');
// Using PHP 8 named arguments.
echo soup(cheese: 'gruyere', vegetable: 'onion');
1 2 3 4 5 6 7 8 9 10
metrics:
    soup:
        label: My Yummy Soup
        matching_calls:
            php:
                - callee:
                    selector: '=soup'
                    argument:
                        vegetable: '*'
                        spice: '*'
Custom metrics can be used in assertions like any other metrics: the name is
made of the metrics. prefix, then the metric name (cache.write in our
example), and it ends with one of the available dimensions (.peak_memory in
the example):
1
"metrics.cache.write.peak_memory < 10mb"
As a matter of fact, built-in metrics are defined in the exact same way as custom ones.
In the timeline view, all captured metrics are displayed as blocks,
positioned with time offsets. In the left pane, all metrics are listed and
split into 2 groups: Metrics and Other Metrics.
Metrics, on the top, gather featured metrics which are called
Layers. These layers can result from a combination of different metrics,
e.g. markdown being a global layer composed of markdown.parse.parsedown,
php_markdown.parse.parsedown, and commonmark.parse.parsedown.
Other Metrics represent every other metrics which have been captured.
To add your metrics to the timeline, you need to set the
timeline option to true:
1 2 3 4 5 6 7 8 9
metrics:
    markdown_to_html:
        label: 'Markdown to HTML'
        layer: ~
        timeline: true
        matching_calls:
            php:
                -
                    callee: "=App\\Utils\\Markdown::toHtml"
The example above adds the markdown_to_html metric to the timeline
view. Setting layer to ~ makes this metric to be considered as a
layer itself.
It is possible to add Timeline Markers directly from a metric, avoiding using the Probe SDK.
In the following example, each time the App\Utils\Markdown::toHtml is called,
a marker with the label Markdown to HTML is added to the timeline.
1 2 3 4 5 6 7 8
metrics:
    markdown_to_html:
        label: 'Markdown to HTML'
        marker: 'Markdown to HTML Timeline Marker'
        matching_calls:
            php:
                -
                    callee: "=App\\Utils\\Markdown::toHtml"
When using argument capturing, it is possible to interpolate the argument's value within the marker label:
1 2 3 4 5 6 7 8 9 10 11 12
metrics:
    greetings:
        label: 'Markdown to HTML'
        # Interpolates the value of the first argument in the marker label.
        marker: 'Greetings - ${1}'
        matching_calls:
            php:
                -
                    callee:
                        selector: "=App\\Utils\\Greetings::phrase"
                        argument:
                            1: "*"
The trick to defining a new layer is to declare it and reference it to itself in
the layer key. The following example shows how to define layers in order to
group metrics under them:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
metrics:
    # Main layer, will gather dimensions from all attached metrics.
    markdown:
        label: "Markdown"
        # Self referencing metrics are layers.
        layer: markdown
        timeline: true
    # Sub-layer
    markdown.parse:
        label: "Markdown Parser"
        layer: markdown
    markdown.parse.parsedown:
        label: "Markdown Parser (erusev/parsedown)"
        # The layer this metric contributes to.
        layer: markdown.parse
        matching_calls:
            php:
                - callee: "=Parsedown::text"
    php_markdown.parse.parsedown:
        label: "Markdown Parser (dflydev/markdown)"
        # The layer this metric contributes to.
        layer: markdown.parse
        matching_calls:
            php:
                - callee: "=dflydev\\markdown\\MarkdownParser::transform"
                  caller: "!^dflydev\\\\markdown\\\\MarkdownParser::transformMarkdown!"
                - callee: "=dflydev\\markdown\\MarkdownParser::transformMarkdown"
By default, all dimensions are contributed for each metric. It is however possible to specify if a given call contributes for its cost, its count, or a combination of both. These contribution types are displayed when hovering a metric name in the timeline view.
This can be specified in the contrib key for each matching call block.
Available values are:
count+cost: The default value; gathers both count and cost dimensions;count-only: Makes the function call contribute its number of calls only;cost-only: Makes the function call contribute its cost dimensions only.1 2 3 4 5 6 7 8 9
metrics:
    markdown_to_html:
        label: 'Markdown to HTML'
        layer: ~
        matching_calls:
            php:
                -
                    callee: "=App\\Utils\\Markdown::toHtml"
                    contrib: count-only
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
metrics:
    # Prototype
    metric_identifier:
        label:                ~
        description:          ~
        layer:                null
        timeline:             null
        matching_calls:
            php:
                contrib:              count+cost # One of "count+cost"; "cost-only"; "count-only"
                caller:
                    selector:             []
                    argument:             []
                callee:               # Required
                    selector:             []
                    argument:             []