Kibana Reporting Tool?


(Dillon Wolf) #1

Does Kibana have some sort of reporting tool that can be used to email out summary reports of the current logs?

Here is the current situation I am in. Currently I am using logstash, elasticsearch, and kibana to collect and house the windows event logs for our servers. I am looking for a way to have a report generated every week and emailed to me. The report would just tell me how many failed logon events or failed file access events occured. Does Kibana have a feature that will allow me to do this? Or do I have to look outside of Kibana for a tool?

Thanks


(Mark Walkom) #2

No, there are 3rd party tools that reportedly do this though.

It's something that has been requested by the community on GH.


(Dillon Wolf) #3

Do you know of any of the 3rd party tools that are free? The only thing I can find is Guardianz: http://guidanz.com/blog/report-scheduler-for-kibana/ and this tool is only included in their service which isn' t free.


(Mark Walkom) #4

All the tools I have seen haven't been free either :frowning:


(Tanya Bragin) #5

If this is important to you, please feel free to +1 these issues:



(Dillon Wolf) #6

I went ahead and +1 both of those issues. This seems like a pretty essential feature for Kibana to have.

For my situation I developed my own workaround which was pretty simple. What I did was wrote a python script which used selenium chromedriver. Before this I set up a dashboard with all of the information I needed in my reports. After that I used chromedriver to open up a chrome window, login to the dashboard, take a screenshot of the dashboard, and then email the screen capture. This script is scheduled to run once a week and at least provides me some form of a report.

For me this was a simple workaround and gave me what I needed.


(Thorsten Nickel) #7

Hi Dillon,

as I am in need of something similar to report (managers do love colorful graphs....) could you put your script or PM to me?

Thanks in advance,
Thorsten


(Dillon Wolf) #8

Ok, here is a layout of what I did. First you will need to set up the dashboard with what you need for your report.

Here is the link for chromedriver, pretty easy to set up with python pip. https://sites.google.com/a/chromium.org/chromedriver/

And then here is my script.

from time import sleep
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = webdriver.ChromeOptions()
options.add_argument("--start-maximized")
chrome = webdriver.Chrome(chrome_options = options)
chrome.get("http://kibana_username:kibana_password@url_to_kibana_dashboard")
sleep(5)
chrome.save_screenshot('**screenshot_path**')
sleep(1)
chrome.quit()

A couple of things you will need to change with the script: In the chrome.get() line put your kibana username and password in the beginning of the url, and then after the @ symbol put the url for the dashboard. The link to the dashboard can be found if you go to the dashboard and click on the share button. You will also need to put the path to where you want the screenshot to be saved in the chrome.save_screenshot() line.

As far as emailing the report I have this process set up as an Automate task, so that just picks up the picture from where it is saved and emails it as an attachment. If you want to include the emailing of the report in the script, here is a link about sending email attachments with python: http://stackoverflow.com/questions/3362600/how-to-send-email-attachments-with-python

If you have any problems with this or need me to clarify anything just let me know,
Dillon


(Thorsten Nickel) #9

Thanks for the reply, this is getting me a real good headstart.
I was investigating into generating reports out of Elastic using Jasper Reports with ES defined as Datasource,
which kinda worked, but I am not getting my head around of putting Kibana visualizations into JSON aggregations.

So, better to have at least something to generate, with this chromedriver :smile:

Best regards,
Thorsten


(Shankar Radhakrishnan) #10

We recently released Skedler v2.2 version that makes it easy to schedule, generate, and distribute PDF, XLS reports from Kibana dashboards and search. It is useful for teams that need a quick economical solution to generate high quality reports from Kibana - Elasticsearch. With the new version, you can schedule time window based reports (helpful to create different time window reports from the same dashboard or search), pause/resume report generation, and customize the reports with logo, headers, various page sizes et al. We test and support Skedler in a variety of linux platforms (centos, debian, ubuntu), ES (1.6+), and Kibana (4.1+) versions. A free version of Skedler is also available.
Please see the blog: https://www.skedler.com/blog for more details on the latest version.
Here is a sample Skedler report: Alameda-Crime-Dashboard.pdf


(system) #11