Chaitanya,
There are two points you should pay attention to. In the Beijing release, the APIs of Holmes have changed a little. The contents of your request should be in camel-case format, which means you have to change the field name "ruleid" and "loopcontrolname" into "ruleId" and "loopControlName". This is the cause of the 400 error. To establish a certain correlation between two alarms, several conditions should be met: the difference of startEpochMicrosec of the parent alarm and the child alarm should be within 60s (according to the rule you provided). This seems to be pretty much ok because the difference of startEpochMicrosec of the two alarms you attached is 0. please make sure that the sources(sourceId or sourceName) of both alarms are topologically correlated. I mean, there should be a certain correlation between "example-vserver-name-val-5470" and "example-vnf-name-val-94632" in A&AI. the eventName field of both alarms should be in accordance with that in the rule (the "specificProblem" property). In your attachment, the eventName "Fault_IMSSBC_Backup MPU is down" of the child alarm is different from "Backup MPU is abnormal" which is written in the rule. I hope it helps. BR, Guangrong 原始邮件 发件人:ChaitanyaReddyPullareddygari <[email protected]> 收件人:付光荣10144542; 抄送人:Anandadas Patki <[email protected]>[email protected] <[email protected]>Sangeeth G <[email protected]> 日 期 :2018年07月02日 19:31 主 题 :RE: ONAP HOLMES issue Apologies. Forgot to add the rule and alarms I am using. PFA the rule and alarms. Also, how can I ensure the rule is successfully deployed to the drools engine. I assume drools engine is same as engine-mgmt docker. I tried to invoke the below API, but I get an 400 “ Unable to process JSON” error. curl -X PUT "https://10.53.172.142/api/holmes-engine-mgmt/v1/rule" -H "accept: application/json" -H "content-type: application/json" -d "{\t\"content\": \"package org.onap.holmes.droolsRule;\\import org.onap.holmes.common.dmaap.DmaapService;\import org.onap.holmes.common.api.stat.VesAlarm;\import org.onap.holmes.common.aai.CorrelationUtil;\import org.onap.holmes.common.dmaap.entity.PolicyMsg;\import org.onap.holmes.common.dropwizard.ioc.utils.ServiceLocatorHolder;\import org.onap.holmes.common.utils.DroolsLog;\ \\rule \\\"Relation_analysis_Rule\\\"\salience 200\no-loop true\ when\ $root : VesAlarm(alarmIsCleared == 0,\ $sourceId: sourceId, sourceId != null && !sourceId.equals(\\\"\\\"),\\\t\\t\\t$sourceName: sourceName, sourceName != null && !sourceName.equals(\\\"\\\"),\\\t\\t\\t$startEpochMicrosec: startEpochMicrosec,\ specificProblem in (\\\"Fault_MultiCloud_VMFailure\\\"),\ $eventId: eventId)\ $child : VesAlarm( eventId != $eventId, parentId == null,\ specificProblem in (\\\"Backup MPU is abnormal\\\"),\ startEpochMicrosec < $startEpochMicrosec + 60000 && startEpochMicrosec > $startEpochMicrosec - 60000 )\ then\\\t\\t$child.setParentId($root.getEventId());\\\t\\tupdate($child);\\\t\\t\end\",\t\"engineid\": \"rule_1530517745601\",\t\"loopcontrolname\": \"TestLoop\"}" Regards, Chaitanya From: Chaitanya Reddy Pullareddygari Sent: Monday, July 2, 2018 4:53 PM To: '[email protected]' <[email protected]> Cc: Anandadas Patki <[email protected]>; [email protected] Subject: RE: ONAP HOLMES issue Hi Guangrong, Thank you very much for your response. Please find attached the logs from both the rule-mgmt and engine-mgmt dockers. 1. Please note that I only notices the “Failed to call the rule verification RESTful API” error with the new Beijing release of Holmes. With earlier Amsterdam I never faced this issue. 2. PFA some screen shots of alarms and rule in Postgres DB. Also below is the exact rule (simplified version from the wiki page) and the rules I am trying. I have simplified them in order to see some straight forward result removing dependency on AAI and DMaaP. I have tried with the actual rule and and alarms available in the wiki page https://wiki.onap.org/pages/viewpage.action?pageId=16002659 but dint get any result either/ From: [email protected] <[email protected]> Sent: Monday, July 2, 2018 4:30 PM To: Chaitanya Reddy Pullareddygari <[email protected]> Cc: Anandadas Patki <[email protected]>; [email protected] Subject: 答复: ONAP HOLMES issue Hi Chaitanya, To address the problems you mentioned below, I need more information: 1. For the "Failed to call the rule verification RESTful API" error, the message you provided is too anbiguous. It's better you send the complete error stack or go to /var/log/ONAP/holmes/zip of the rule management docker, collect all the log files under that and send them back to me. 2. The rules and alarms are always supposed to be stored in the DB unless an explicit command is executed to remove the rule(s) or any abating alarms are received from DMaaP. I don't know how to reproduce such kind of errors. Could you please give me more details, such as the steps to reproduce them. 3. In order to generate correlation among alarms, you have to modify the rule or the alarms to make them match each other. Further more, you have to ensure that the rules are deployed into the Drools engine successfully. 4. As for other errors you high lighted below, they are false positives. The cause of the problems is that DCAE is not deployed. Since you're not using HOLMES as a DCAE application, you don't have to care about them. This will be optimized in R3. Best Regards, Guangrong 原始邮件 发件人:ChaitanyaReddyPullareddygari <[email protected]> 收件人:付光荣10144542; 抄送人:Anandadas Patki <[email protected]> 日 期 :2018年07月02日 17:49 主 题 :ONAP HOLMES issue Hello Guangrong, How are you doing? Hope this email finds you well. I am hoping that you could help me resolve an issue I have been facing with HOLMES. I have tries both Amsterdam and Beijing versions and I am facing the same issue with both. I suspect I may be doing something wrong. I am trying to run HOLMES In stand alone mode following the steps detailed in the https://wiki.onap.org/pages/viewpage.action?pageId=16002659 page. I ran this with Beijing release of HOLMES in the hope that it would have fixed the issue i was facing earlier. But unfortunately i still face the same issue as before. Below is the error i get. With Beijing release i am also facing the issue of posting the rule to rule-engine. Some times it throws "Failed to call the rule verification RESTful API" error. If i rebuild the dockers then it will work again. Also, the rules and alarms seem to disappear from the Postgres DB after a while. I am not sure if this is designed this way or if its an error. Are the rules supposed to be posted to engine-mgmt docker as well? I dont see any thing happenning once the alarms are posted to DMaaP. i could see the alarms reaching the engine-mgmt and getting saved to DB from the debug log. But no correlation happening after that. Can you please provide any help? 2018-07-02 08:05:01 179 INFO [org.glassfish.jersey.process.internal.ExecutorProviders][pool-3-thread-1] invocationID:{InvocationID} - Selected ExecutorServiceProvider implementation [org.glassfish.jersey.client.DefaultClientAsyncExecutorProvider] to be used for injection of executor qualified by [org.glassfish.jersey.client.ClientAsyncExecutor] annotation. 2018-07-02 08:05:01 180 INFO [org.glassfish.jersey.client.internal.HttpUrlConnector][pool-3-thread-1] invocationID:{InvocationID} - Restricted headers are not enabled using [sun.net.http.allowRestrictedHeaders] system property (setting only takes effect on connections created after the property has been set/changed). 2018-07-02 08:05:01 181 DEBUG [org.jvnet.hk2.logger][Finalizer] invocationID:{InvocationID} - Shutdown ServiceLocator ServiceLocatorImpl(__HK2_Generated_130,132,1165322451) 2018-07-02 08:05:01 181 DEBUG [org.jvnet.hk2.logger][Finalizer] invocationID:{InvocationID} - ServiceLocator ServiceLocatorImpl(__HK2_Generated_130,132,1165322451) has been shutdown 2018-07-02 08:05:01 182 DEBUG [org.jvnet.hk2.logger][Finalizer] invocationID:{InvocationID} - Shutdown ServiceLocator ServiceLocatorImpl(__HK2_Generated_126,128,446674383) 2018-07-02 08:05:01 183 DEBUG [org.jvnet.hk2.logger][Finalizer] invocationID:{InvocationID} - ServiceLocator ServiceLocatorImpl(__HK2_Generated_126,128,446674383) has been shutdown 2018-07-02 08:05:01 190 DEBUG [org.jvnet.hk2.logger][Finalizer] invocationID:{InvocationID} - Shutdown ServiceLocator ServiceLocatorImpl(__HK2_Generated_127,129,1897294039) 2018-07-02 08:05:01 190 DEBUG [org.jvnet.hk2.logger][Finalizer] invocationID:{InvocationID} - ServiceLocator ServiceLocatorImpl(__HK2_Generated_127,129,1897294039) has been shutdown 2018-07-02 08:05:01 189 WARN [org.onap.holmes.common.config.MicroServiceConfig][pool-3-thread-1] invocationID:{InvocationID} - URI is not absolute javax.ws.rs.ProcessingException: URI is not absolute at org.glassfish.jersey.client.ClientRuntime.invoke(ClientRuntime.java:264) at org.glassfish.jersey.client.JerseyInvocation$1.call(JerseyInvocation.java:684) at org.glassfish.jersey.client.JerseyInvocation$1.call(JerseyInvocation.java:681) at org.glassfish.jersey.internal.Errors.process(Errors.java:315) at org.glassfish.jersey.internal.Errors.process(Errors.java:297) at org.glassfish.jersey.internal.Errors.process(Errors.java:228) at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:444) at org.glassfish.jersey.client.JerseyInvocation.invoke(JerseyInvocation.java:681) at org.glassfish.jersey.client.JerseyInvocation$Builder.method(Jer 2018-07-02 07:49:01 195 INFO [org.onap.holmes.common.config.MicroServiceConfig][pool-3-thread-1] invocationID:{InvocationID} - The query url is: null/service_component/10.53.172.137:9101. The corresponding configurations are null 2018-07-02 07:49:01 195 ERROR [org.onap.holmes.rulemgt.dcae.DcaeConfigurationPolling][pool-3-thread-1] invocationID:{InvocationID} - Failed to fetch DCAE configurations. Can not resolve configurations from DCAE. The configuration string is empty. org.onap.holmes.common.exception.CorrelationException: Can not resolve configurations from DCAE. The configuration string is empty. at org.onap.holmes.common.dcae.utils.DcaeConfigurationParser.parse(DcaeConfigurationParser.java:40) at org.onap.holmes.common.dcae.DcaeConfigurationQuery.getDcaeConfigurations(DcaeConfigurationQuery.java:28) at org.onap.holmes.rulemgt.dcae.DcaeConfigurationPolling.run(DcaeConfigurationPolling.java:69) Regards, Chaitanya ============================================================================================================================ Disclaimer: This message and the information contained herein is proprietary and confidential and subject to the Tech Mahindra policy statement, you may review the policy at http://www.techmahindra.com/Disclaimer.html externally http://tim.techmahindra.com/tim/disclaimer.html internally within TechMahindra. ============================================================================================================================ -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#10767): https://lists.onap.org/g/onap-discuss/message/10767 Mute This Topic: https://lists.onap.org/mt/23008476/21656 Group Owner: [email protected] Unsubscribe: https://lists.onap.org/g/onap-discuss/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
