Configuring WSO2 AS and BAM - wso2

I am using BAM 2.2.0. I configured the service statistics toolbox inside the BAM server based on the documentation. And run the example program "service-stats"it is working fine.
But when I configure BAM inside my AS server using service data publisher configuration, and test the BAM server.Connection was established. But when I click the dashboard in BAM it shows an empty page with some msg how to configure AS .
Currently inside the BAM available script I can see "service-stats-271". How can I visualize my AS service status in BAM. Both servers are running in two machines.

Seeing "service-stats-271" is natural after installing the toolbox. But first you should see whether data has arrived to Cassandra from AS. For that you can login to Cassandra Explorer in BAM Management Console and see whether there is your column family existing in the EVENT_KS keyspace. If yes see whether there are any rows relevant to your events. If yes see whether the data has arrived to the H2 datbase during the execution of the Hive query.
If your data is not correctly published to Cassandra, please read [1] again. Sometimes you may not have done the following instruction mentioned there.
Go to <WSO2 Application Server home>/repository/conf/etc and open bam.xml file and enable ServiceDataPublishing as follows:
<BamConfig>
<ServiceDataPublishing>enable</ServiceDataPublishing>
</BamConfig>
[1] http://docs.wso2.org/wiki/display/BAM220/Setting+up+Service+Statistics+Data+Agent

Related

Cloud Composer worker fails to connect to external database

I am attempting to take my existing cloud composer environment and connect to a remote SQL database (Azure SQL). I've been banging at my head at this for a few days and I'm hoping someone can point out where my problem lies.
Following the documentation found here I've spun up a GKE Service and SQL Proxy workload. I then created a new airflow connection as show here using the full name of the service azure-sqlproxy-service:
I test run one of my DAG tasks and get the following:
Unable to connect: Adaptive Server is unavailable or does not exist
Not sure on the issue I decide to remote directly into one of the workers, whitelist that IP on the remote DB firewall, and try to connect to the server. With no command line MSSQL client installed I launch python on the worker and attempt to connect to the database with the following:
connection = pymssql.connect(host='database.url.net',user='sa',password='password',database='database')
From which I get the same error above with both the Service and the remote IP entered in as host. Even ignoring the service/proxy shouldn't this airflow worker be able to reach the remote database? I can ping websites but checking the remote logs the DB doesn't show any failed logins. With the generic error and not many ideas on what to do next I'm stuck. A few google results have suggested switching libraries but I'm not quite sure how, or if I even need to, within airflow.
What troubleshooting steps could I take next to get at least a single worker communicating to the DB before moving on the the service/proxy?
After much pain I've found that Cloud composer uses ubuntu 1804 which currently breaks pymssql as per here:
https://github.com/pymssql/pymssql/issues/687
I tried downgrading to 2.1.4 to no success. Needing to get this done I've followed the instructions outlined in this post to use pyodbc.
Google Composer- How do I install Microsoft SQL Server ODBC drivers on environments

WSO2 Operations Log Empty

I've installed WSO2 and have it running, devices connected (Android) etc.
I can see the device and the information about it, but the operations log is empty and it's not letting me view the installed applications or deploy new ones.
I've probably missed something basic, but I can't for the life of me see what it is, any help welcome!
Thanks
I hope you are running WSO2 IoT server 3.1.0.
Please follow these steps to enable debug logs.
Go to the IOT_HOME/conf/log4j.properties file.
Uncomment the following two
#log4j.logger.org.apache.synapse.transport.http.wire=DEBUG
#log4j.logger.feign=DEBUG
Comment the following one.
log4j.category.org.apache.synapse=WARN
Then restart the IoT server.
This will start printing debug logs in the IoT_HOME/repository/logs/wso2carbon.log file.

How actually we can monitor WSO2 EMM using CEP or BAM?

I am new with wso2 products. I am using EMM for device and app. But i want to monitor my devices continuously.
As some document suggest, i can done this using CEP in real time and also can use BAM. But i did not found any proper document to install or configure these system together (EMM, CEP, BAM).
My EMM server is already live. I am now tring to analysis the http access log to find out registration failed or other error.
But I actually need to monitor the EMM server in real time.
Do I need to run these servers separately and also have to configure them separately? Is there any way to merge all(EMM,CEP,BAM and even ESS) application and run all of them by running one carbon server?
If I need to run these server separately, then how I can configure CEP/BAM as this will monitor EMM server's API/log files/services etc?
Is there documentation for this? I can not find any document related to CEP/BAM related to EMM.
Can any one please help me for this?
WSO2 BAM product has been replaced by WSO2 DAS (Data Analytics Server). Again WSO2 DAS consist with WSO2 CEP features where as it is capable of doing both real time and batch time processing. Therefore you can DAS for both batch processing and real time processing
Both DAS and CEP deals with event streams where as in DAS streams could be persisted to event tables as data needs to be stored for batch processing [2]. On the other hand both can be integrated with other applications by using Receivers for streams. You can protocols such as thrift, soap, http, mqtt, jms and kafka when creating receivers[3]
For real time processing you need to write Execution Plans [4] which uses Siddhi Query Language [5]. DAS supports Apache spark for batch processing. Both products consist with Analytic dashboard which could be used to visualize real time and persistent data [6].
[1] http://wso2.com/products/data-analytics-server/
[2] https://docs.wso2.com/display/DAS300/Understanding+Event+Streams+and+Event+Tables
[3] https://docs.wso2.com/display/DAS300/Configuring+Event+Receivers
[4] https://docs.wso2.com/display/CEP400/Creating+a+Standalone+Execution+Plan
[5] https://docs.wso2.com/display/CEP400/SiddhiQL+Guide+3.0
[6] https://docs.wso2.com/display/DAS300/Analytics+Dashboard
Yes its possible. You will need to use a data publisher to publish events to DAS.

Can BAM and CEP monitor requests from client like Zipkin

I am wondering if I can use BAM and CEP to monitor requests from client, and even find the bottleneck of the service.
I found zipkin, a project that could do this, but the base of my application is WSO2, I don't want to get other projects from scratch.
Yes, you can use BAM/CEP for this. If you need real time monitoring you can use CEP and you can use BAM for batch process. From BAM 2.4.0 onwards, CEP features have been added inside BAM also hence you can use BAM and do real time analytics.
What type of services are involved with your scenario? Depends on this you can use already existing data publisher or write new data publisher for BAM/CEP to publish your request details. For example if you are having chain of axis2 webservice calls for a request from client, and you want to monitor where the bottle neck/more time consumed, then you may use the service stats publishing, and monitor the average time take to process the message which will help you to see where the actual delay has been introduced. For this you can use existing service statistics publisher feature. Also BAM will allow you to create your own dashboard to visualize, hence you can customize the dashboard.
Also with BAM 2.4.0 we have introduced notifications feature also which you can define some threshold value and configure to send notification if that cross that threshold value.

VMware Server 2.0 - The VMware Infrastructure Web Service not responding

After installing VMware Server I get the following error when I try to access the VMware web-based server manager:
The VMware Infrastructure Web Service
at "http://localhost:8222/sdk" is not
responding
Go into the services manager and check that the 'VMware Host Agent' service is running. If not, then start it and then try browsing to the site again.
Vmware Hostd was not working for me either.
However, in trying to start the service it stopped automatically. Typically when this happens it is because there is an error in your config.xml.
C:\ProgramData\VMware\VMware Server\hostd\config.xml
In my case, checking the logs at:
C:\ProgramData\VMware\VMware Server
showed it erroring out after "Trying hostsvc".
Searching the config.xml for hostsvc showed references to several things, the first thing was the datastore. In checking my datastores.xml file:
C:\ProgramData\VMware\VMware Server\hostd\datastores.xml .
I found it full of all sorts of random characters instead of a properly formed XML document.
Renaming datastores.xml to datastorex.xml.bad allowed me to start the service. At which point I had to add back my datastores through the GUI.
Hopefully this will help someone else out. I did not find any other references in Google to this issue.
Try accessing via "http://localhost:8222" without the /sdk. You can also try the secure site via "https://localhost:8333".