Comments (10)
Will this be solved by #84?
from httplugbundle.
This is something that would only make sense here, so the plugin itself could be in this repository, isn't it?
from httplugbundle.
I do not think we need a new plugin class. We just need a new HistoryPlugin service and add that last in the chain.
We could maybe do something cool when displaying this.. Like a git diff to show what was changed by the plugin chain.
from httplugbundle.
Diff sounds cool, but unsure about the usefulness in this case...but I am not against it.
Also, see php-http/httplug#105 for diff stuff
from httplugbundle.
I suggest we add two collectors per client. One at the beginning of the plugin queue and one at the end. We want to do it per client because we want to show that client X sent this request and client Y sent that request.
from httplugbundle.
Why would we need two collectors.
We want to add something to the beginning and to the end of a queue where the order matters. It sounds familiat, doesn't it? (Plugin chain)
Maybe we can somehow pass the client to the journal as well to identify the sender?
from httplugbundle.
Or it could be a PluginClientDebug whichs extends the PluginClient one to replace the plugin chain and log the total stack trace of a request (go in this plugin, then in this one, then in this client, ...)
from httplugbundle.
I can't see how we could pass an identifier to the journal/history plugin to be used every second time. That's why I suggested two collectors.
I like @joelwurtz idea with a PluginClientDebug. That would make a lot of things easier to extract. Like which plugins are used with which clients. It could also be easier to inject the data collector and also a stopwatch(?).
from httplugbundle.
I also like the idea. But keep in mind that this debug client must not have any more features than debug. I mean, the behavior should be transparent: logging should also be done in prod mode in the "ordinary" plugin client with the configured logger. (BTW: is it possible right now to configure multiple logger plugins with different loggers (channels)?)
from httplugbundle.
I think we can integrate the debug in the existing PluginClient by adding a debug options which takes a Plugin as the input (or a list of plugins) and these plugins are injected between each existent plugin
from httplugbundle.
Related Issues (20)
- Support for multiple mock clients HOT 4
- Client configuration is ignored for async client HOT 1
- Async request not visible in the profiler HOT 1
- Synfony 5 Support HOT 1
- Conflict with twig 3.0 / symfony 4.4 HOT 2
- Auto discovery broken in Symfony 4.4 ? HOT 4
- The httplug.collector.twig.http_message service is deprecated since version 1.17 HOT 5
- Collector not compatible with Symfony\Component\HttpKernel\DataCollector\DataCollectorInterface HOT 9
- Xdebug nested issue HOT 1
- The data collector does not have reset tag HOT 1
- Can't test throwing an exception. Help needed
- 1.22 crash on cache clear in symfony 4.4 HOT 1
- Not allow null value for cache default_ttl HOT 6
- ErrorPlugin cannot be configured HOT 1
- The collector formatter needs to implement Http\Message\Formatter::formatResponseForRequest HOT 1
- [Profiler] No captured body (Symfony Client) HOT 4
- Switch from Http\Client\HttpClient to Psr\Http\Client\ClientInterface HOT 4
- Package php-http/message-factory is abandoned, you should avoid using it. Use psr/http-factory instead HOT 3
- Header authentication service configuration HOT 2
- Support Symfony 7
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from httplugbundle.