Reporting, Analysis and Analytics

  • 1.  Creating Reports

    Posted 11-25-2015 06:43 PM

    Hi Everyone,

    I cannot get reportmail to function, this is my script

    #!/bin/sh
    REPORTS_URL=http:///xxxxx:8080/zport/dmd/reports
    date
    echo "Sending Mail"

    /opt/zenoss/bin/reportmail --user=xxxx --passwd=xxxx --from=xxxx@xxxx.com --address=xxxx@xxxx.com --subject="Zenoss Core: Availability Report" --url="$REPORTS_URL/Device Reports/Availability Report"

    also applied chmod 755 emailReportPingIssues.sh

    I am not receiving any email.

    can anyone help me out

    thanks and regards

    noob is me



  • 2.  Here's one that certainly

    Posted 11-30-2015 10:15 AM

    Here's one that certainly used to work for me:

    reportmail -u https://zen42.class.example.org/zport/dmd/reports#reporttree:.zport.dmd.Reports.Custom%20Device%20Reports.Maintenance%20State -a jane.curry@skills-1st.co.uk -s "test of reportmail" -f zenoss@skills-1st.co.uk -U NotThis -p notThis

    Get the url ( -u ) by going to the report you want and simply cut-and-paste it from your Zenoss GUI. The "-U" and "-p" are the Zenoss user and password. Use "reportmail help" for info on the other parameters.

    Cheers,

    Jane

    Email: jane.curry">mailto:jane.curry@skills-1st.co.uk">jane.curry@skills-1st.co.uk   Web: http://www.skills-1st.co.uk

    ">http://www.skills-1st.co.uk">http://www.skills-1st.co.uk



  • 3.  Custom Reports

    Posted 11-30-2015 08:14 PM

    Hi Jcurry!

    Thanks!

    I got the reportmail working.

    I got the threshold reports working.

    Is there anyway to get a custom report

    For example, I need to get a summary report for all the down machines for this day. or the down instances of a process.

    How can i create a table report for this

    can you give me tips and tricks thanks

    noob is me



  • 4.  There used to be a brilliant

    Posted 12-01-2015 02:38 AM

    There used to be a brilliant tip from Chet about how to do this but I can no longer find it anywhere. Best I can do is provide a scan of my annotated page.

    So the crucial line in the middle here is:

    return ','.join([ s.name() for s in context.os.ipservices() if s.monitored() ])

    Cheers,

    Jane

    Email: jane.curry">mailto:jane.curry@skills-1st.co.uk">jane.curry@skills-1st.co.uk   Web: http://www.skills-1st.co.uk

    ">http://www.skills-1st.co.uk">http://www.skills-1st.co.uk



  • 5.  Thanks jcurry,

    Posted 12-01-2015 02:49 AM

    Thanks jcurry,

    I will try this as soon as possible, I remember trying to get to the url ~device/manage url, and its asking me for another user credential even though my account is logged in as a zen manager.

    what account is neccessary so i can access this

    it rejects the current zen manager account that i have been given.

    regards,

    Gene

    noob is me



  • 6.  Custom Method

    Posted 12-01-2015 06:07 PM

    HI jcurry,

    As i was trying to get to add the custom method using the screenshot you have provided, every time I enter the URL, (http://x.x.x.x:8080/zport/dmd/Devices/manage). I get logged out and my credentials is being rejected.

    "Your session has expired,
    or the entered password, or
    the username is incorrect."

    thus my question.

    what account type is needed so i can access the said URL.

    regards,

    Gene

    noob is me



  • 7.  update on reports

    Posted 12-02-2015 12:43 AM

    I am now able to create a custom report on down machines for my zenoss.

    using columns:

    getId

    getPingStatusString

    query :here.getPingStatusString() == "Down"

    Now I need to create a custom report for the monitored components.

    I added the monitored component using by going through INFRASTRUCTURE -> PROCESS -> Add Process CLass

    so basically i just need to create a custom report based from this url

    http://x.x.x.x:8080/zport/dmd/reports#reporttree:.zport.dmd.Reports.Device%20Reports.All%20Monitored%20Components filtering what osprocess that i need.

    noob is me



  • 8.  Not sure I understand what

    Posted 12-02-2015 01:32 AM

    Not sure I understand what you are trying to achieve. Is this a report of processes that are monitored If so, the sample that I scanned is almost there - just substitute ipservices with processes.

    Email: jane.curry">mailto:jane.curry@skills-1st.co.uk">jane.curry@skills-1st.co.uk   Web: http://www.skills-1st.co.uk

    ">http://www.skills-1st.co.uk">http://www.skills-1st.co.uk



  • 9.  So here is an example that

    Posted 12-02-2015 01:46 AM

    So here is an example that shows all monitored processes for devices.

    Create the Python script getProcessesListAsString as:

    return ','.join( [ s.id for s in context.os.processes() if s.monitored() ] )

    Note the s.id here, not s.name - presumably s.name is not valid for the processes relationship as it doesn't work.

    Then the report has:

    getId
    getProcessesListAsString

    as the columns.

    I have also added a Query field to only display devices if they do have any processes:

    here.os.processes()

    Does that help

    Cheers,

    Jane

    Email: jane.curry">mailto:jane.curry@skills-1st.co.uk">jane.curry@skills-1st.co.uk   Web: http://www.skills-1st.co.uk

    ">http://www.skills-1st.co.uk">http://www.skills-1st.co.uk