Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Forwardport] AD-HOC feat (Profiler): Allow supplying complex profiler configuration #17528

Merged
merged 2 commits into from
Aug 14, 2018
Merged

[Forwardport] AD-HOC feat (Profiler): Allow supplying complex profiler configuration #17528

merged 2 commits into from
Aug 14, 2018

Conversation

jignesh-baldha
Copy link
Member

Original Pull Request

#15171

Description

Magento 2 provides a primitive creating profiles of the application,
similar to those esposed by the transaction tracing community. These
allow getting a granular view of the application based on a custom set
of metrics, rather than relying on PHP callgraph profilers to determine
how an application is behaving.

It is currently possible to modify the output of a transaction trace.
However, it is not currently possible to modify the transaction trace
driver
. This commit seeks to extend the configuration such that the
driver itself can be replaced, rather than simply the output.

This allows replacing the driver entirely with something like the
OpenTracing API, which can then use its own exporters to express the
code to something like the CNCF Jaeger project.

This, in turn, allows getting a granular view of the transactions in an
application.

== Design Notes ==

=== Minimal changes ===

Considerable additional work is bring prototyped with the alpha
OpenCensus APIs, however at this time this is inappropriate to be merged
into the core. The APIs are immature, and the approach for reading
transaction traces not finalised.

This allows continued experimentation up to and including deployment to
production infrastructure without committing early to supporting this
model of profiling.

=== Variables prefixed with "profiler" ===

At first glace, the variables appear to be unnecessarily verbose.
However, they are declared in the global context, and are thus
namespaced to avoid collisions.

Contribution checklist

  • Pull request has a meaningful description of its purpose
  • All commits are accompanied by meaningful commit messages
  • All new or changed code is covered with unit/integration tests (if applicable)
  • All automated tests passed successfully (all builds on Travis CI are green)

@magento-engcom-team
Copy link
Contributor

Hi @jignesh-baldha. Thank you for your contribution
Here is some useful tips how you can test your changes using Magento test environment.
Add the comment under your pull request to deploy test or vanilla Magento instance:

  • @magento-engcom-team give me test instance - deploy test instance based on PR changes
  • @magento-engcom-team give me {$VERSION} instance - deploy vanilla Magento instance

For more details, please, review the Magento Contributor Assistant documentation

@rogyar rogyar self-assigned this Aug 11, 2018
@magento-engcom-team magento-engcom-team added this to the Release: 2.3.0 milestone Aug 11, 2018
@magento-engcom-team magento-engcom-team merged commit 2a515ef into magento:2.3-develop Aug 14, 2018
magento-engcom-team pushed a commit that referenced this pull request Aug 14, 2018
@magento-engcom-team
Copy link
Contributor

Hi @jignesh-baldha. Thank you for your contribution.
We will aim to release these changes as part of 2.3.0.
Please check the release notes for final confirmation.

@jignesh-baldha jignesh-baldha deleted the up-port-pull-15171 branch August 27, 2018 10:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants