Skip to Content.
Sympa Menu

grouper-users - Re: [grouper-users] Error trying to use RabbitMQ

Subject: Grouper Users - Open Discussion List

List archive

Re: [grouper-users] Error trying to use RabbitMQ


Chronological Thread 
  • From: Richard Frovarp <>
  • Cc: " Mailing List" <>
  • Subject: Re: [grouper-users] Error trying to use RabbitMQ
  • Date: Tue, 23 Apr 2019 21:56:51 +0000

That helps a good deal. Thanks. Not touching grouper.client.properties,
and effectively just changing publisher.messagingSystemName from
rabbitmq to rabbitmqSystem appears to have got me pass this error. The
default grouper.client.properties for RabbitMQ is rather confusing as it
has:

grouper.messaging.default.name.of.messaging.system = rabbitmq
grouper.messaging.system.rabbitmqSystem.name = rabbitmqSystem
grouper.messaging.system.rabbitmqSystem.name = rabbitmq
grouper.messaging.system.rabbitmq.defaultSystemName = rabbitmqSystem

which I completely don't understand. So it was using rabbitmq and
rabbitmqSystem. The odd thing to me is the middle two being two
different values in the same example config file at
https://github.com/Internet2/grouper/blob/master/grouper-misc/grouper-messaging-rabbitmq/src/main/resources/grouper.client.rabbitMq.example.properties

So someone that knows more than me likely will want to fix it. It also
exists in the example on the wiki page:
https://spaces.at.internet2.edu/pages/viewpage.action?spaceKey=Grouper&title=Grouper+Messaging+with+RabbitMQ

But this all means that the wiki would likely be correct in setting
rabbitmqSystem instead of rabbitmq in its example for the loader. I've
updated the wiki so hopefully I'm right.

It's now complaining that it can't connect to my specified hostname. I
likely have something not quite right with the TLS settings.


Thanks for the help.


On 4/23/19 1:51 PM, Gettes, Michael wrote:
> Hi Richard,
>
> Here are my configs… I hope this helps.
>
> grouper.client.properties
>
> grouper.messaging.system.rabbitmqSystem.name = rabbitmqSystem
> grouper.messaging.system.rabbitmqSystem.class =
> edu.internet2.middleware.grouperMessagingRabbitmq.GrouperMessagingRabbitmqSystem
> grouper.messaging.system.rabbitmqSystem.host = HOSTNAME.edu
> grouper.messaging.system.rabbitmqSystem.virtualhost = /
> grouper.messaging.system.rabbitmqSystem.port = 5672
> grouper.messaging.system.rabbitmqSystem.defaultPageSize = 800
> grouper.messaging.system.rabbitmqSystem.maxPageSize = 1000
> grouper.messaging.system.rabbitmqSystem.username = grouper
> grouper.messaging.system.rabbitmqSystem.password = XXXXX
>
> — pay attention to username vs. user
>
> grouper-loader.properties
>
> changeLog.consumer.rabbit.quartzCron = 2/10 * * * * ?
> changeLog.consumer.rabbit.class =
> edu.internet2.middleware.grouper.changeLog.esb.consumer.EsbConsumer
> changeLog.consumer.rabbit.publisher.class =
> edu.internet2.middleware.grouper.changeLog.esb.consumer.EsbMessagingPublisher
> changeLog.consumer.rabbit.publisher.messagingSystemName = rabbitmqSystem
> changeLog.consumer.rabbit.publisher.queueOrTopicName = amq.topic
> changeLog.consumer.rabbit.publisher.messageQueueType = topic
> changeLog.consumer.rabbit.publisher.exchangeType = topic
> changeLog.consumer.rabbit.regexRoutingKeyReplacementDefinition =
> ${groupName.replaceAll(":", ".”)}
>
> i send everything to a topic (amq.topic) and there i route messages based
> on the group name as the routing key. remember, group names are translated
> from a:b:c to a.b.c and # is wild-carding. Yes, I am aggressive with
> running it every 10 seconds.
>
> I see message transmission rates as high as 30K per minute (500/sec).
>
> /mrg
>
>> On Apr 23, 2019, at 2:43 PM, Richard Frovarp <>
>> wrote:
>>
>> I'm running into an error trying to use RabbitMQ with 2.4.
>>
>> Following:
>>
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__spaces.at.internet2.edu_display_Grouper_Grouper-2BMessaging-2Bwith-2BRabbitMQ&d=DwIGaQ&c=sJ6xIWYx-zLMB3EPkvcnVg&r=wEQWI9G4vDvpfmhpuO6yww&m=hurczbcdGFQyVjfsBTbJoskCtuiNd89Mukv3HDFOQj0&s=0yISCW_grUEPnJ4Q8oUm1yQ2o9CZwQi7BHeORTsaa1I&e=
>>
>> So I've updated grouper-loader.properties. It first complained about a
>> missing cron, so I added that. I then copied this:
>>
>> https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_Internet2_grouper_blob_master_grouper-2Dmisc_grouper-2Dmessaging-2Drabbitmq_src_main_resources_grouper.client.rabbitMq.example.properties&d=DwIGaQ&c=sJ6xIWYx-zLMB3EPkvcnVg&r=wEQWI9G4vDvpfmhpuO6yww&m=hurczbcdGFQyVjfsBTbJoskCtuiNd89Mukv3HDFOQj0&s=Dl2BqBBG9hNWTmyPvZzejfDg5g_8_yF65C0pfOIUdB4&e=
>>
>> into
>>
>> /opt/grouper/grouper.apiBinary-2.4.0/conf/grouper.client.properties
>>
>> swapping out my connection details. I then run the daemon and get this:
>>
>> 2019-04-23 13:36:00,700: [DefaultQuartzScheduler_Worker-3] ERROR
>> EsbConsumer.processChangeLogEntries(659) - - problem
>> java.lang.NullPointerException: Cant find config for messageSystemName:
>> 'rabbitmq'
>> at
>> edu.internet2.middleware.grouperClient.messaging.GrouperMessagingEngine.retrieveGrouperMessageSystem(GrouperMessagingEngine.java:91)
>> at
>> edu.internet2.middleware.grouperClient.messaging.GrouperMessagingEngine.send(GrouperMessagingEngine.java:58)
>> at
>> edu.internet2.middleware.grouper.changeLog.esb.consumer.EsbMessagingPublisher.dispatchEvent(EsbMessagingPublisher.java:72)
>> at
>> edu.internet2.middleware.grouper.changeLog.esb.consumer.EsbConsumer.processChangeLogEntries(EsbConsumer.java:629)
>> at
>> edu.internet2.middleware.grouper.changeLog.ChangeLogHelper.processRecords(ChangeLogHelper.java:245)
>> at
>> edu.internet2.middleware.grouper.app.loader.GrouperLoaderType$5.runJob(GrouperLoaderType.java:638)
>> at
>> edu.internet2.middleware.grouper.app.loader.GrouperLoaderJob.runJob(GrouperLoaderJob.java:465)
>> at
>> edu.internet2.middleware.grouper.app.loader.GrouperLoaderJob.execute(GrouperLoaderJob.java:345)
>> at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>> at
>> org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
>>
>> I'm rather confused as to what isn't lining up. I've changed the
>> changeLog.consumer.rabbitMqMessagingSample.publisher.messagingSystemName
>> = rabbitmq
>> to something completely different in the grouper-loader.properties
>> file, that changes the name of what it can't find. I understand it not
>> finding something bogus, but not sure why it can't find something in
>> grouper.client.properties.
>>
>> Thanks,
>>
>> Richard




Archive powered by MHonArc 2.6.19.

Top of Page