How to create chart from webservices in Pentaho - web-services

We have a requirement to create different charts like pie chart,line chart etc using pentaho.
We are getting data for these charts from a SOAP based webservices call.
what is the best approach.?
can we use PDI(kettle) component in Pentaho to get data from webservice and then use pentaho designer to create charts from PDI datasource?

How do you want to consume the charts? email? web? mobile? PDF?
Do you need to store the data from the soap call, e.g. to build up a history, or literally just display the chart at that point of time from the soap call?
If the former, you'll have to use PDI to get the data then store it.
If the latter then you could probably just do this directly in CDE, and build up a dashboard to show the charts. The charting in CDE / CTools is the best there is in the Pentaho stack. If you've not heard of CDE/Ctools then check it out - it's a vital plugin for any Pentaho installation, and parts of it are included in Pentaho by default now.

Every chart is a picture generated by charting engine. Pentaho has couple of charting engines (Birt Reports, Jasper Reports). You should use the Pentaho BI, which under http normal GET request will send back the resources as requested. Just like normal web browsing, where pictures can be accessed as inner urls when page is rendered. The parameters to chart can be passes as HTTP GET/PUT parameters.

Related

How to parsing google maps for H2/Title/NAP and send it to the Google Sheet?

Need to get NAP and h2/title tags from google business profiles. And all these stuff send to google sheet. Maybe you can recommend me the way how can I do that? Maybe I should not do this manually, cause there is some tool for that?
I need to parse all SEO companies in Toronto, but it's possible only with my GMB profile, only with (https://seotwix.com/)
I could not use importXML formula, because of the google maps application is fully JS pulling.
Try using proper tools (automation framework + scraping engine) and use Google Sheets just for basic storage purposes:
https://youtu.be/uBC752CWTew (Pipedream for automation + ScrapeNinja engine for scraping)

WSO2 DSS: Unable to connect to Google spreradsheet

I am trying to connect to a newly created Google spreadsheet, using the WSO2 Data Services Server (DSS), but it keeps giving me an error when I test the connection. I am using WSO2 DSS 3.2.1 with JDK 1.7.0_60 on Windows.
The sample Google spreadsheet is working fine.
It looks like this problem is due to the new format of the Google Doc URLs (introduced in March 2014)
https://docs.google.com/a/ishafoundation.org/spreadsheets/d/1U0uI5sKHy0WVgQcVtZ4mYMHSzTYZZJse35xy1Y1N7Xg/edit#gid=0
The older format is:
https://docs.google.com/a/ishafoundation.org/spreadsheet/ccc?key=1U0uI5sKHy0WVgQcVtZ4mYMHSzTYZZJse35xy1Y1N7Xg&usp=drive_web#gid=0
As a workaround to this, I am creating my spreadsheet in the old version of Google Sheets, using this link:
https://g.co/oldsheets
However, this message is on the Google Sheets help page
*Spreadsheets created in the old version of Sheets will eventually be converted to the new Sheets, which won’t require any action on your
part. More details coming soon. Thanks
This looks a bit scary to me, since it basically means that my data service will break at some random point in the future when Google decide to change the URL formats... Can someone from WSO2 let me know if this will be fixed in the next DSS update, and when we can expect it to be released.
Just a suggestion - but wouldn't it be better if we only had to enter the unique key for the spreadsheet (instead of the full link), and the DSS server used the Google Sheets API to retrieve the data. This might make our implementations a little more future-proof.
Yes this will be fixed in DSS 3.2.2 release. Associated JIRA is DS-930. Alpha pack can be found from this location
Thanks
Chanika

Is there a way to extract data from Nagios as if it was a web service?

My situation: I'm working on a web monitoring dashboard that assembles informations from different applications and sources and generate graphs, info graphics and reports.
The applications I'm trying to integrate are CACTI, Nagios, and other local private monitoring tools. I had no problem to integrate these applications, except for Nagios (I don't have much experience with it).
What I want to know is if there is a way to use Nagios as a Web Service, or something similar, so I can expose some of the informations and use it to generate my own reports on my dashboard application.
Is it possible to do that without any epic effort?
thanks for reading.
Nagios 4.x starting with version 4.4 now includes CGIs for JSON output. Installing the newest version of Nagios might be the easiest way to go.
See the announcement here.
Review the slides from Nagios World Conference 2013 here.
The Check_MK Multisite GUI (Web base GUI using MK Livestatus) offers a web service mode, where you can send queries/commands as URL parameters and get the response as JSON in the body.
The trick is: Create a view in the GUI, which fits your needs. Then extract the URL of that view and add the parameter output_format=json. Now you should have the output in a parsable format.
For example, this URL should give you a JSON list of all services:
check_mk/view.py?view_name=allservices&output_format=json
You can try:
1) MK Livestatus http://mathias-kettner.de/checkmk_livestatus.html
it's not web service but it can give current data without any complicated action. All you need redirect this data.
2)status-json plugin http://exchange.nagios.org/directory/Addons/APIs/JSON/status-2Djson/details which return data in JSON format.
3)NagiosWS plugin but I wasn't able to get to work it yet. I think it can be done for Nagios 2.x
4)GroundWork Foundation plugin. I think I will try use it now.
I was able to get to work 1 and 2 solution now.
Otherwise you can use Icinga which can give you some JSON or XML output. Icinga is fork of Nagios and can be installed with saving all your nagios data and plugins. At least it written on Icinga's site =) They have some other solution like PHP lib.
Sorry, I cannot post only 2 link while I'm newbie on this site.
Best regards.
Worked for me - MK Livestatus http://mathias-kettner.de/checkmk_livestatus.html it's not web service but it can give current data without any complicated action. All you need redirect this data.

How to log XML SOAP messages (Request and Response) to SQL Database?

In my web application, I need to log all the SOAP messages to my SQL 2005 database whenever I make a web service call to my business partners' web service. How do I accomplish that?
Thanks in Advance,
Tony
You haven't specified what language you are using but assuming C# / .NET you could use SOAP extensions to get the SOAP content as a string and then use a simple INSERT to add to an arbitrary DB table.
There are probably far more elegant methods but I've implemented the above and it works fine.
Just remember to have a large column size in the DB table since the SOAP output could potentially be large.
Note: seems to be a bug in stackoverflow - the URL is:
http://msdn.microsoft.com/en-us/library/esw638yk(VS.71).aspx
Consider using Log4net configured with an Appender that targets the database table.

Sharepoint web services to edit existing list from desktop

Perhaps I am not asking or searching for this correctly:
I want to have a desktop script (currently using python) that will update a list on a sharepoint site.
The current script reads various file shares, ftp sites and a ArcGIS database to determine which metadata files have been updated and published. The script then writes all these results to a Excel spreadsheet.
We would like to do the same thing, but keep the data in a Share Point list instead of a spreadsheet. We don't need to upload any files (which is what I keep running across in my search) but just update or add to a list.
We could care less about what language or tools we use, we just don't have access to any custom coding on the Share Point server.
You should be able to use the lists webservice on the Sharepoint server,
the url is normally:
http://host/sitename/_vti_bin/lists.asmx
you are looking at the UpdateListItems webservice call. I don't know python but I use C# and work with sharepoint every day you can find a working example on MSDN on a Windows app to call the web service.