<div dir="auto">Attila (cc) would know how it works with Swift but he told me this week he had some issues with it.<br><br><div data-smartmail="gmail_signature">David Moreau Simard<br>Senior Software Engineer | Openstack RDO<br><br>dmsimard = [irc, github, twitter]</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Feb 8, 2017 1:27 PM, "Javier Pena" <<a href="mailto:javier.pena@redhat.com">javier.pena@redhat.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
<br>
----- Original Message -----<br>
> Hi,<br>
><br>
> Following a discussion with David about os_loganalyze [1] I wanted to discuss<br>
> with you about the features offered by it and if that is relevant to include<br>
> it and<br>
> if yes how :)<br>
><br>
> Basically this is a middleware to configure into Apache that enhances txt or<br>
> zipped logs<br>
> files when requested by the user. It enhances by adding clickable timestamp<br>
> (to be<br>
> easy shareable by a link) also it highlight some lines according to the log<br>
> severities<br>
> and finally you can also filter by severity. So features offered by it are<br>
> really simple but seems convenient.<br>
><br>
> As I said it works within Apache so logs should be available locally but<br>
> according to David someone wrote an Apache conf that make it work<br>
> with log stored in Swift.<br>
><br>
<br>
Apparently, os_loganalyze has Swift support, but I've been trying to test it and it looks outdated. Maybe we could get it up to date.<br>
<br>
Javier<br>
<br>
> Upstream on the OpenStack gerrit clicking on the CI link of a review redirect<br>
> directly to the logs enhanced by os_loganalize [2].<br>
><br>
> We already have some stuff in SF that can cover the mentioned features:<br>
> * The timestamp plugin of Jenkins<br>
> * Kibana (ELK)<br>
><br>
> The latter offers far more features. Sharing a given log is easily doable<br>
> as well as filtering but that less user friendly, the kibana interface is not<br>
> so easy to deal with (there is a learning curve) :) Here is an example of<br>
> query [3]<br>
><br>
> The former, this an example here [4], adds a timestamp in front of logs but<br>
> I guess that all you can't expect from it.<br>
><br>
> So IMO if we want to have it in SF logs needs to be exported by default as<br>
> files in a standard FS of SF and enable the middleware in the Apache gateway.<br>
> As swift log export is optional I don't see an obvious solution to manage it<br>
> out of the box (maybe forcing swift container access via the gateway).<br>
><br>
> But at the end I think we already have an out of the box solution to store<br>
> logs and even better a solution to search through logs :) ELK. Why not<br>
> activating<br>
> that by default and enhance hideci.js (on gerrit) to also give links to<br>
> kibana<br>
> interface with the right query for a given job ?<br>
><br>
> Do you have any suggestions ?<br>
><br>
> Cheers,<br>
> Fabien<br>
><br>
> 1: <a href="https://github.com/openstack-infra/os-loganalyze" rel="noreferrer" target="_blank">https://github.com/openstack-<wbr>infra/os-loganalyze</a><br>
> 2: <a href="https://review.openstack.org/#/c/424947/" rel="noreferrer" target="_blank">https://review.openstack.org/#<wbr>/c/424947/</a><br>
> 3:<br>
> <a href="https://softwarefactory-project.io/app/kibana#/discover?_g=(refreshInterval:(display:Off,pause:!f,value:0),time:(from:%272017-02-08T11:41:30.000Z%27,mode:absolute,to:%272017-02-08T11:42:00.000Z%27))&_a=(columns:!(message),filters:!((%27$state%27:(store:appState),meta:(alias:!n,disabled:!f,index:%27logstash-*%27,key:%27@timestamp%27,negate:!f,value:%27February%208th%202017,%2006:41:46.630%27),query:(match:(%27@timestamp%27:(query:1486554106630,type:phrase)))),(%27$state%27:(store:appState),meta:(alias:!n,disabled:!f,index:%27logstash-*%27,key:message,negate:!f,value:%27%20%20%20%20sf-resources:%20allow-delete%27),query:(match:(message:(query:%27%20%20%20%20sf-resources:%20allow-delete%27,type:phrase))))),index:%27logstash-*%27,interval:auto,query:(query_string:(analyze_wildcard:!t,query:%27*%27)),sort:!(%27@timestamp%27,desc))" rel="noreferrer" target="_blank">https://softwarefactory-<wbr>project.io/app/kibana#/<wbr>discover?_g=(refreshInterval:(<wbr>display:Off,pause:!f,value:0),<wbr>time:(from:%272017-02-08T11:<wbr>41:30.000Z%27,mode:absolute,<wbr>to:%272017-02-08T11:42:00.<wbr>000Z%27))&_a=(columns:!(<wbr>message),filters:!((%27$state%<wbr>27:(store:appState),meta:(<wbr>alias:!n,disabled:!f,index:%<wbr>27logstash-*%27,key:%27@<wbr>timestamp%27,negate:!f,value:%<wbr>27February%208th%202017,%2006:<wbr>41:46.630%27),query:(match:(%<wbr>27@timestamp%27:(query:<wbr>1486554106630,type:phrase)))),<wbr>(%27$state%27:(store:appState)<wbr>,meta:(alias:!n,disabled:!f,<wbr>index:%27logstash-*%27,key:<wbr>message,negate:!f,value:%27%<wbr>20%20%20%20sf-resources:%<wbr>20allow-delete%27),query:(<wbr>match:(message:(query:%27%20%<wbr>20%20%20sf-resources:%20allow-<wbr>delete%27,type:phrase))))),<wbr>index:%27logstash-*%27,<wbr>interval:auto,query:(query_<wbr>string:(analyze_wildcard:!t,<wbr>query:%27*%27)),sort:!(%27@<wbr>timestamp%27,desc))</a><br>
> 4:<br>
> <a href="https://softwarefactory-project.io/jenkins/job/software-factory-unit-tests/5042/console" rel="noreferrer" target="_blank">https://softwarefactory-<wbr>project.io/jenkins/job/<wbr>software-factory-unit-tests/<wbr>5042/console</a><br>
><br>
> ______________________________<wbr>_________________<br>
> Softwarefactory-dev mailing list<br>
> <a href="mailto:Softwarefactory-dev@redhat.com">Softwarefactory-dev@redhat.com</a><br>
> <a href="https://www.redhat.com/mailman/listinfo/softwarefactory-dev" rel="noreferrer" target="_blank">https://www.redhat.com/<wbr>mailman/listinfo/<wbr>softwarefactory-dev</a><br>
><br>
</blockquote></div></div>