You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Liviu Tudor (JIRA)" <ji...@apache.org> on 2011/05/29 15:15:47 UTC

[jira] [Created] (LANG-702) New component for lang -- summarizer

New component for lang -- summarizer
------------------------------------

                 Key: LANG-702
                 URL: https://issues.apache.org/jira/browse/LANG-702
             Project: Commons Lang
          Issue Type: New Feature
          Components: General
    Affects Versions: 3.0
            Reporter: Liviu Tudor
            Priority: Minor
             Fix For: 3.x


Hi, I'm creating this as a patch request but I guess really initially I wanted to verify with everyone that commons lang is the place for this class hierarchy I'm proposing -- and if not please suggest whether it would be more appropriate to submit this to collections or one of the other Commons projects. (Or I accept as well the fact that it might not be good enough for any of the commons projects in which case please just let me know so I won't try to create new issues around this in the future.)
Basically I've come across a pattern I find myself using a lot in my applications where I want a quick (and not so dirty) way of monitoring certain things in the application -- for instance, I want as a quick healthcheck a page to tell me how many requests we process over a 1 minute interval or so. While one can implement complex monitoring systems to achieve the same, a lot of the times, simply the fact that the number of successful transactions per minute goes down to 50% (after an application upgrade for instance) is a clear indicator to me that something isn't right so I can start investigating straight away and not wait for our monitoring systems to kick in one hour later or so and alert us of this. As such I have developed this component which I have called "Summarizer" (purely as my initial request was just to sum up some numbers over a period of time and reset it regularly -- but as my javadoc comments state, of course this doesn't have to be a simple arithmetic sum and can be extended to other operations). The diff I'm proposing here contains the base class and an example of the class using integers which just sums them up -- which is as I said the kind of implementation that I have found myself implementing a lot in my apps. I appreciate that the classes are not completely finished and there are no unit tests yet -- and that is because as I said at this stage I am trying to figure out whether this component would fit into the Commons Lang component or it would be more appropriate to commit this somewhere else.
I would appreciate your input/comments on this so I know whether i'm on the right track on committing this here or should I move it elsewhere; I accept that perhaps the package names and the class names are not the best, and am willing to discuss with your main committers around this -- if this proves to be a valid component for commons. 
If you decide this is a good idea to proceed with then I can start adding unit tests and more comments/javadocs around it to make this into a usable class hierarchy. 
As suggested by your FAQ's I've created a diff from the root of the folder -- if it helps more if I just provide the 2 classes I can do so too -- just let me know and I can send you a zip with the 2 classes alone or so.
Looking forward to your comments on this,

Liv

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Moved] (SANDBOX-340) New component for lang -- summarizer

Posted by "Henri Yandell (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/SANDBOX-340?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Henri Yandell moved LANG-702 to SANDBOX-340:
--------------------------------------------

          Component/s:     (was: General)
                       Functor
        Fix Version/s:     (was: 3.x)
    Affects Version/s:     (was: 3.0)
             Workflow: jira  (was: Default workflow, editable Closed status)
                  Key: SANDBOX-340  (was: LANG-702)
              Project: Commons Sandbox  (was: Commons Lang)

> New component for lang -- summarizer
> ------------------------------------
>
>                 Key: SANDBOX-340
>                 URL: https://issues.apache.org/jira/browse/SANDBOX-340
>             Project: Commons Sandbox
>          Issue Type: New Feature
>          Components: Functor
>            Reporter: Liviu Tudor
>            Priority: Minor
>              Labels: features, newbie
>         Attachments: patch_summarizer.diff
>
>
> Hi, I'm creating this as a patch request but I guess really initially I wanted to verify with everyone that commons lang is the place for this class hierarchy I'm proposing -- and if not please suggest whether it would be more appropriate to submit this to collections or one of the other Commons projects. (Or I accept as well the fact that it might not be good enough for any of the commons projects in which case please just let me know so I won't try to create new issues around this in the future.)
> Basically I've come across a pattern I find myself using a lot in my applications where I want a quick (and not so dirty) way of monitoring certain things in the application -- for instance, I want as a quick healthcheck a page to tell me how many requests we process over a 1 minute interval or so. While one can implement complex monitoring systems to achieve the same, a lot of the times, simply the fact that the number of successful transactions per minute goes down to 50% (after an application upgrade for instance) is a clear indicator to me that something isn't right so I can start investigating straight away and not wait for our monitoring systems to kick in one hour later or so and alert us of this. As such I have developed this component which I have called "Summarizer" (purely as my initial request was just to sum up some numbers over a period of time and reset it regularly -- but as my javadoc comments state, of course this doesn't have to be a simple arithmetic sum and can be extended to other operations). The diff I'm proposing here contains the base class and an example of the class using integers which just sums them up -- which is as I said the kind of implementation that I have found myself implementing a lot in my apps. I appreciate that the classes are not completely finished and there are no unit tests yet -- and that is because as I said at this stage I am trying to figure out whether this component would fit into the Commons Lang component or it would be more appropriate to commit this somewhere else.
> I would appreciate your input/comments on this so I know whether i'm on the right track on committing this here or should I move it elsewhere; I accept that perhaps the package names and the class names are not the best, and am willing to discuss with your main committers around this -- if this proves to be a valid component for commons. 
> If you decide this is a good idea to proceed with then I can start adding unit tests and more comments/javadocs around it to make this into a usable class hierarchy. 
> As suggested by your FAQ's I've created a diff from the root of the folder -- if it helps more if I just provide the 2 classes I can do so too -- just let me know and I can send you a zip with the 2 classes alone or so.
> Looking forward to your comments on this,
> Liv

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

[jira] [Commented] (LANG-702) New component for lang -- summarizer

Posted by "Matt Benson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LANG-702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13040842#comment-13040842 ] 

Matt Benson commented on LANG-702:
----------------------------------

This looks like a nice little set of classes to me, and yes, not wholly unlike some of the things we have in [lang].  On the other hand, the "customizable summation strategy" aspect of this makes me think of a redesigned version that could live in the [functor] component (which is still in the sandbox, but is really about ready to graduate).

What is the typical pattern for making use of the {{.get()}} results?  I would have expected to see e.g. {{onFlush(callback)}} which would allow the summarizer to take some action on each timed flush operation.  A redesign in [functor] could specify {{onFlush(UnaryProcedure<T>)}} for this.  Also, the subclassing aspect would be unnecessary in [functor] because the 'summation' could be supplied externally in the form of a {{BinaryFunction<? super T, ? super T, ? extends T>}}.  IMO removing the subclassing necessity would be quite cool, and I would add such a rewritten version of this to [functor] in a second.

Regards,
Matt

> New component for lang -- summarizer
> ------------------------------------
>
>                 Key: LANG-702
>                 URL: https://issues.apache.org/jira/browse/LANG-702
>             Project: Commons Lang
>          Issue Type: New Feature
>          Components: General
>    Affects Versions: 3.0
>            Reporter: Liviu Tudor
>            Priority: Minor
>              Labels: features, newbie
>             Fix For: 3.x
>
>         Attachments: patch_summarizer.diff
>
>
> Hi, I'm creating this as a patch request but I guess really initially I wanted to verify with everyone that commons lang is the place for this class hierarchy I'm proposing -- and if not please suggest whether it would be more appropriate to submit this to collections or one of the other Commons projects. (Or I accept as well the fact that it might not be good enough for any of the commons projects in which case please just let me know so I won't try to create new issues around this in the future.)
> Basically I've come across a pattern I find myself using a lot in my applications where I want a quick (and not so dirty) way of monitoring certain things in the application -- for instance, I want as a quick healthcheck a page to tell me how many requests we process over a 1 minute interval or so. While one can implement complex monitoring systems to achieve the same, a lot of the times, simply the fact that the number of successful transactions per minute goes down to 50% (after an application upgrade for instance) is a clear indicator to me that something isn't right so I can start investigating straight away and not wait for our monitoring systems to kick in one hour later or so and alert us of this. As such I have developed this component which I have called "Summarizer" (purely as my initial request was just to sum up some numbers over a period of time and reset it regularly -- but as my javadoc comments state, of course this doesn't have to be a simple arithmetic sum and can be extended to other operations). The diff I'm proposing here contains the base class and an example of the class using integers which just sums them up -- which is as I said the kind of implementation that I have found myself implementing a lot in my apps. I appreciate that the classes are not completely finished and there are no unit tests yet -- and that is because as I said at this stage I am trying to figure out whether this component would fit into the Commons Lang component or it would be more appropriate to commit this somewhere else.
> I would appreciate your input/comments on this so I know whether i'm on the right track on committing this here or should I move it elsewhere; I accept that perhaps the package names and the class names are not the best, and am willing to discuss with your main committers around this -- if this proves to be a valid component for commons. 
> If you decide this is a good idea to proceed with then I can start adding unit tests and more comments/javadocs around it to make this into a usable class hierarchy. 
> As suggested by your FAQ's I've created a diff from the root of the folder -- if it helps more if I just provide the 2 classes I can do so too -- just let me know and I can send you a zip with the 2 classes alone or so.
> Looking forward to your comments on this,
> Liv

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (LANG-702) New component for lang -- summarizer

Posted by "Liviu Tudor (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LANG-702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13044119#comment-13044119 ] 

Liviu Tudor commented on LANG-702:
----------------------------------

Guys any more thoughts on this -- shall I close it and look at the other Commons components where maybe this might fit better?

> New component for lang -- summarizer
> ------------------------------------
>
>                 Key: LANG-702
>                 URL: https://issues.apache.org/jira/browse/LANG-702
>             Project: Commons Lang
>          Issue Type: New Feature
>          Components: General
>    Affects Versions: 3.0
>            Reporter: Liviu Tudor
>            Priority: Minor
>              Labels: features, newbie
>             Fix For: 3.x
>
>         Attachments: patch_summarizer.diff
>
>
> Hi, I'm creating this as a patch request but I guess really initially I wanted to verify with everyone that commons lang is the place for this class hierarchy I'm proposing -- and if not please suggest whether it would be more appropriate to submit this to collections or one of the other Commons projects. (Or I accept as well the fact that it might not be good enough for any of the commons projects in which case please just let me know so I won't try to create new issues around this in the future.)
> Basically I've come across a pattern I find myself using a lot in my applications where I want a quick (and not so dirty) way of monitoring certain things in the application -- for instance, I want as a quick healthcheck a page to tell me how many requests we process over a 1 minute interval or so. While one can implement complex monitoring systems to achieve the same, a lot of the times, simply the fact that the number of successful transactions per minute goes down to 50% (after an application upgrade for instance) is a clear indicator to me that something isn't right so I can start investigating straight away and not wait for our monitoring systems to kick in one hour later or so and alert us of this. As such I have developed this component which I have called "Summarizer" (purely as my initial request was just to sum up some numbers over a period of time and reset it regularly -- but as my javadoc comments state, of course this doesn't have to be a simple arithmetic sum and can be extended to other operations). The diff I'm proposing here contains the base class and an example of the class using integers which just sums them up -- which is as I said the kind of implementation that I have found myself implementing a lot in my apps. I appreciate that the classes are not completely finished and there are no unit tests yet -- and that is because as I said at this stage I am trying to figure out whether this component would fit into the Commons Lang component or it would be more appropriate to commit this somewhere else.
> I would appreciate your input/comments on this so I know whether i'm on the right track on committing this here or should I move it elsewhere; I accept that perhaps the package names and the class names are not the best, and am willing to discuss with your main committers around this -- if this proves to be a valid component for commons. 
> If you decide this is a good idea to proceed with then I can start adding unit tests and more comments/javadocs around it to make this into a usable class hierarchy. 
> As suggested by your FAQ's I've created a diff from the root of the folder -- if it helps more if I just provide the 2 classes I can do so too -- just let me know and I can send you a zip with the 2 classes alone or so.
> Looking forward to your comments on this,
> Liv

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (LANG-702) New component for lang -- summarizer

Posted by "Liviu Tudor (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LANG-702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13041089#comment-13041089 ] 

Liviu Tudor commented on LANG-702:
----------------------------------

@Matt This is a first draft based on the rather specific implementations that as I said I have found myself using in the past -- as such I agree that the class could do with some refactoring, and your idea to have callbacks for flush and move the 'summation' outside in its own interface makes sense for a more extensible framework. Really, as I said, the diff submitted was just to get some opinion first of whether this component would fit in (if anywhere!) -- my initial thought was that once that is decided we could look at how we can make it more robust and extensible. 
@Stephen Appreciate the feedback -- I wasn't sure if this was suitable for [lang] or not either -- hence my initial question. If it is the case that this doesn't fit in here, what other component would you think this is more suitable for? My initial thought was to submit this to [collections], however, on the basis that this only stores one "number" I thought again and tried [lang] -- that isn't to say this was a good decision though :) 
So, to sum it up I guess, the first question is whether this fits in [lang] or is there a better place for it? I don't want to commit the same diff to every project in commons until one team says "yes this makes sense here" (or is this the way to do it? not sure, sorry if I sound so "green"). Also, from what Matt was saying there is a component in the pipeline that potentially already implements some of this functionality? (in which case it doesn't make sense to commit this as well) My trail of thought was that once there is a place decided for the component I can liaise with the main committers and decide on changes to the implementation and hierarchy -- but perhaps this doesn't fit with the standard way of operating in Apache, in which case I would appreciate some pointers as to what is the standard procedure. (Your FAQ's talk about how to commit patches and where and don't mention the design iterations a team goes through for a component -- unless it's buried somewhere in one of the links that I've missed?)
Regards,

Liv

> New component for lang -- summarizer
> ------------------------------------
>
>                 Key: LANG-702
>                 URL: https://issues.apache.org/jira/browse/LANG-702
>             Project: Commons Lang
>          Issue Type: New Feature
>          Components: General
>    Affects Versions: 3.0
>            Reporter: Liviu Tudor
>            Priority: Minor
>              Labels: features, newbie
>             Fix For: 3.x
>
>         Attachments: patch_summarizer.diff
>
>
> Hi, I'm creating this as a patch request but I guess really initially I wanted to verify with everyone that commons lang is the place for this class hierarchy I'm proposing -- and if not please suggest whether it would be more appropriate to submit this to collections or one of the other Commons projects. (Or I accept as well the fact that it might not be good enough for any of the commons projects in which case please just let me know so I won't try to create new issues around this in the future.)
> Basically I've come across a pattern I find myself using a lot in my applications where I want a quick (and not so dirty) way of monitoring certain things in the application -- for instance, I want as a quick healthcheck a page to tell me how many requests we process over a 1 minute interval or so. While one can implement complex monitoring systems to achieve the same, a lot of the times, simply the fact that the number of successful transactions per minute goes down to 50% (after an application upgrade for instance) is a clear indicator to me that something isn't right so I can start investigating straight away and not wait for our monitoring systems to kick in one hour later or so and alert us of this. As such I have developed this component which I have called "Summarizer" (purely as my initial request was just to sum up some numbers over a period of time and reset it regularly -- but as my javadoc comments state, of course this doesn't have to be a simple arithmetic sum and can be extended to other operations). The diff I'm proposing here contains the base class and an example of the class using integers which just sums them up -- which is as I said the kind of implementation that I have found myself implementing a lot in my apps. I appreciate that the classes are not completely finished and there are no unit tests yet -- and that is because as I said at this stage I am trying to figure out whether this component would fit into the Commons Lang component or it would be more appropriate to commit this somewhere else.
> I would appreciate your input/comments on this so I know whether i'm on the right track on committing this here or should I move it elsewhere; I accept that perhaps the package names and the class names are not the best, and am willing to discuss with your main committers around this -- if this proves to be a valid component for commons. 
> If you decide this is a good idea to proceed with then I can start adding unit tests and more comments/javadocs around it to make this into a usable class hierarchy. 
> As suggested by your FAQ's I've created a diff from the root of the folder -- if it helps more if I just provide the 2 classes I can do so too -- just let me know and I can send you a zip with the 2 classes alone or so.
> Looking forward to your comments on this,
> Liv

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (SANDBOX-340) New component for lang -- summarizer

Posted by "Liviu Tudor (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/SANDBOX-340?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13093087#comment-13093087 ] 

Liviu Tudor commented on SANDBOX-340:
-------------------------------------

Thanks everyone for your help with this -- I have sent the email as suggested so we'll see what happens.
Do I need to do anything now with this issue?

> New component for lang -- summarizer
> ------------------------------------
>
>                 Key: SANDBOX-340
>                 URL: https://issues.apache.org/jira/browse/SANDBOX-340
>             Project: Commons Sandbox
>          Issue Type: New Feature
>          Components: Functor
>            Reporter: Liviu Tudor
>            Priority: Minor
>              Labels: features, newbie
>         Attachments: patch_summarizer.diff
>
>
> Hi, I'm creating this as a patch request but I guess really initially I wanted to verify with everyone that commons lang is the place for this class hierarchy I'm proposing -- and if not please suggest whether it would be more appropriate to submit this to collections or one of the other Commons projects. (Or I accept as well the fact that it might not be good enough for any of the commons projects in which case please just let me know so I won't try to create new issues around this in the future.)
> Basically I've come across a pattern I find myself using a lot in my applications where I want a quick (and not so dirty) way of monitoring certain things in the application -- for instance, I want as a quick healthcheck a page to tell me how many requests we process over a 1 minute interval or so. While one can implement complex monitoring systems to achieve the same, a lot of the times, simply the fact that the number of successful transactions per minute goes down to 50% (after an application upgrade for instance) is a clear indicator to me that something isn't right so I can start investigating straight away and not wait for our monitoring systems to kick in one hour later or so and alert us of this. As such I have developed this component which I have called "Summarizer" (purely as my initial request was just to sum up some numbers over a period of time and reset it regularly -- but as my javadoc comments state, of course this doesn't have to be a simple arithmetic sum and can be extended to other operations). The diff I'm proposing here contains the base class and an example of the class using integers which just sums them up -- which is as I said the kind of implementation that I have found myself implementing a lot in my apps. I appreciate that the classes are not completely finished and there are no unit tests yet -- and that is because as I said at this stage I am trying to figure out whether this component would fit into the Commons Lang component or it would be more appropriate to commit this somewhere else.
> I would appreciate your input/comments on this so I know whether i'm on the right track on committing this here or should I move it elsewhere; I accept that perhaps the package names and the class names are not the best, and am willing to discuss with your main committers around this -- if this proves to be a valid component for commons. 
> If you decide this is a good idea to proceed with then I can start adding unit tests and more comments/javadocs around it to make this into a usable class hierarchy. 
> As suggested by your FAQ's I've created a diff from the root of the folder -- if it helps more if I just provide the 2 classes I can do so too -- just let me know and I can send you a zip with the 2 classes alone or so.
> Looking forward to your comments on this,
> Liv

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

[jira] [Commented] (LANG-702) New component for lang -- summarizer

Posted by "Henri Yandell (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LANG-702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13067486#comment-13067486 ] 

Henri Yandell commented on LANG-702:
------------------------------------

Apologies for lack of reply. In terms of operating method - 'take it to the list' is the main Apache process :)

I'm +1 to not putting in lang. Sending an email to dev@commons.apache.org (subscribe by mailing dev-subscribe@commons.apache.org) with a subject of "[functor] New summarize component" and the above would be an excellent way to continue. Chances are Matt is the one who will respond, but it'll be better than in here. I'll go ahead and move this issue over to the SANDBOX and set the component to Functor. 

> New component for lang -- summarizer
> ------------------------------------
>
>                 Key: LANG-702
>                 URL: https://issues.apache.org/jira/browse/LANG-702
>             Project: Commons Lang
>          Issue Type: New Feature
>          Components: General
>    Affects Versions: 3.0
>            Reporter: Liviu Tudor
>            Priority: Minor
>              Labels: features, newbie
>             Fix For: 3.x
>
>         Attachments: patch_summarizer.diff
>
>
> Hi, I'm creating this as a patch request but I guess really initially I wanted to verify with everyone that commons lang is the place for this class hierarchy I'm proposing -- and if not please suggest whether it would be more appropriate to submit this to collections or one of the other Commons projects. (Or I accept as well the fact that it might not be good enough for any of the commons projects in which case please just let me know so I won't try to create new issues around this in the future.)
> Basically I've come across a pattern I find myself using a lot in my applications where I want a quick (and not so dirty) way of monitoring certain things in the application -- for instance, I want as a quick healthcheck a page to tell me how many requests we process over a 1 minute interval or so. While one can implement complex monitoring systems to achieve the same, a lot of the times, simply the fact that the number of successful transactions per minute goes down to 50% (after an application upgrade for instance) is a clear indicator to me that something isn't right so I can start investigating straight away and not wait for our monitoring systems to kick in one hour later or so and alert us of this. As such I have developed this component which I have called "Summarizer" (purely as my initial request was just to sum up some numbers over a period of time and reset it regularly -- but as my javadoc comments state, of course this doesn't have to be a simple arithmetic sum and can be extended to other operations). The diff I'm proposing here contains the base class and an example of the class using integers which just sums them up -- which is as I said the kind of implementation that I have found myself implementing a lot in my apps. I appreciate that the classes are not completely finished and there are no unit tests yet -- and that is because as I said at this stage I am trying to figure out whether this component would fit into the Commons Lang component or it would be more appropriate to commit this somewhere else.
> I would appreciate your input/comments on this so I know whether i'm on the right track on committing this here or should I move it elsewhere; I accept that perhaps the package names and the class names are not the best, and am willing to discuss with your main committers around this -- if this proves to be a valid component for commons. 
> If you decide this is a good idea to proceed with then I can start adding unit tests and more comments/javadocs around it to make this into a usable class hierarchy. 
> As suggested by your FAQ's I've created a diff from the root of the folder -- if it helps more if I just provide the 2 classes I can do so too -- just let me know and I can send you a zip with the 2 classes alone or so.
> Looking forward to your comments on this,
> Liv

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

       

[jira] [Commented] (LANG-702) New component for lang -- summarizer

Posted by "Stephen Colebourne (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/LANG-702?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13040851#comment-13040851 ] 

Stephen Colebourne commented on LANG-702:
-----------------------------------------

Anything that talks about "customizable" and "strategy" makes me doubt it for [lang]. The main problem in [lang] is restricting its size to the most important common utilities. This one doesn't look essential enough to me, and too many other people would probably want to do it in a different way. [functor]'s assessment may be very different.

> New component for lang -- summarizer
> ------------------------------------
>
>                 Key: LANG-702
>                 URL: https://issues.apache.org/jira/browse/LANG-702
>             Project: Commons Lang
>          Issue Type: New Feature
>          Components: General
>    Affects Versions: 3.0
>            Reporter: Liviu Tudor
>            Priority: Minor
>              Labels: features, newbie
>             Fix For: 3.x
>
>         Attachments: patch_summarizer.diff
>
>
> Hi, I'm creating this as a patch request but I guess really initially I wanted to verify with everyone that commons lang is the place for this class hierarchy I'm proposing -- and if not please suggest whether it would be more appropriate to submit this to collections or one of the other Commons projects. (Or I accept as well the fact that it might not be good enough for any of the commons projects in which case please just let me know so I won't try to create new issues around this in the future.)
> Basically I've come across a pattern I find myself using a lot in my applications where I want a quick (and not so dirty) way of monitoring certain things in the application -- for instance, I want as a quick healthcheck a page to tell me how many requests we process over a 1 minute interval or so. While one can implement complex monitoring systems to achieve the same, a lot of the times, simply the fact that the number of successful transactions per minute goes down to 50% (after an application upgrade for instance) is a clear indicator to me that something isn't right so I can start investigating straight away and not wait for our monitoring systems to kick in one hour later or so and alert us of this. As such I have developed this component which I have called "Summarizer" (purely as my initial request was just to sum up some numbers over a period of time and reset it regularly -- but as my javadoc comments state, of course this doesn't have to be a simple arithmetic sum and can be extended to other operations). The diff I'm proposing here contains the base class and an example of the class using integers which just sums them up -- which is as I said the kind of implementation that I have found myself implementing a lot in my apps. I appreciate that the classes are not completely finished and there are no unit tests yet -- and that is because as I said at this stage I am trying to figure out whether this component would fit into the Commons Lang component or it would be more appropriate to commit this somewhere else.
> I would appreciate your input/comments on this so I know whether i'm on the right track on committing this here or should I move it elsewhere; I accept that perhaps the package names and the class names are not the best, and am willing to discuss with your main committers around this -- if this proves to be a valid component for commons. 
> If you decide this is a good idea to proceed with then I can start adding unit tests and more comments/javadocs around it to make this into a usable class hierarchy. 
> As suggested by your FAQ's I've created a diff from the root of the folder -- if it helps more if I just provide the 2 classes I can do so too -- just let me know and I can send you a zip with the 2 classes alone or so.
> Looking forward to your comments on this,
> Liv

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (LANG-702) New component for lang -- summarizer

Posted by "Liviu Tudor (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/LANG-702?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Liviu Tudor updated LANG-702:
-----------------------------

    Attachment: patch_summarizer.diff

attached is the diff from svn as per your faq's

> New component for lang -- summarizer
> ------------------------------------
>
>                 Key: LANG-702
>                 URL: https://issues.apache.org/jira/browse/LANG-702
>             Project: Commons Lang
>          Issue Type: New Feature
>          Components: General
>    Affects Versions: 3.0
>            Reporter: Liviu Tudor
>            Priority: Minor
>              Labels: features, newbie
>             Fix For: 3.x
>
>         Attachments: patch_summarizer.diff
>
>
> Hi, I'm creating this as a patch request but I guess really initially I wanted to verify with everyone that commons lang is the place for this class hierarchy I'm proposing -- and if not please suggest whether it would be more appropriate to submit this to collections or one of the other Commons projects. (Or I accept as well the fact that it might not be good enough for any of the commons projects in which case please just let me know so I won't try to create new issues around this in the future.)
> Basically I've come across a pattern I find myself using a lot in my applications where I want a quick (and not so dirty) way of monitoring certain things in the application -- for instance, I want as a quick healthcheck a page to tell me how many requests we process over a 1 minute interval or so. While one can implement complex monitoring systems to achieve the same, a lot of the times, simply the fact that the number of successful transactions per minute goes down to 50% (after an application upgrade for instance) is a clear indicator to me that something isn't right so I can start investigating straight away and not wait for our monitoring systems to kick in one hour later or so and alert us of this. As such I have developed this component which I have called "Summarizer" (purely as my initial request was just to sum up some numbers over a period of time and reset it regularly -- but as my javadoc comments state, of course this doesn't have to be a simple arithmetic sum and can be extended to other operations). The diff I'm proposing here contains the base class and an example of the class using integers which just sums them up -- which is as I said the kind of implementation that I have found myself implementing a lot in my apps. I appreciate that the classes are not completely finished and there are no unit tests yet -- and that is because as I said at this stage I am trying to figure out whether this component would fit into the Commons Lang component or it would be more appropriate to commit this somewhere else.
> I would appreciate your input/comments on this so I know whether i'm on the right track on committing this here or should I move it elsewhere; I accept that perhaps the package names and the class names are not the best, and am willing to discuss with your main committers around this -- if this proves to be a valid component for commons. 
> If you decide this is a good idea to proceed with then I can start adding unit tests and more comments/javadocs around it to make this into a usable class hierarchy. 
> As suggested by your FAQ's I've created a diff from the root of the folder -- if it helps more if I just provide the 2 classes I can do so too -- just let me know and I can send you a zip with the 2 classes alone or so.
> Looking forward to your comments on this,
> Liv

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira