Hi Darragh, the fact that the error message contains a '400' error suggests 
the problem happens on the server when it receives the report. 

My first guess given that error message is also that there's a mix of 
versions installed, but it's weird that it only happens on some reports. 
Maybe there is something malformed in those reports that triggers a 
different code path on the server.

You can save a copy of the reports by adding `store` to the type of report 
submission on the master: `reports = https,store` and see what they look 
like. They should go into a subdirectory 
of /opt/puppetlabs/puppet/cache/reports

HTH
--eric0



On Tuesday, November 27, 2018 at 10:10:53 AM UTC-8, Darragh Bailey wrote:
>
> Hi,
>
>
> Currently in the process of testing out an upgrade to version 5 of the 
> puppet-agent within our local virtual environment used to validate changes 
> before they can be landed and I'm running into a few problems around the 
> report at the end run.
>
> Have 5 VMs in a vagrant environment, that are initially bootstrapped with 
> some scripts to get the puppet 5 packages installed, then uses puppet apply 
> to perform some initial setup around network/apt-caching, followed by 
> applying the 'puppet_server' provisioner which runs puppet agent.
>
> Unfortunately I'm seeing an error, that doesn't occur on all the VM's and 
> I'm not sure how to debug it further or understand what's missing.
>
> vagrant up
> ...
> ==> srv-1: Warning: Event['previous_value'] contains a Process::Status 
> value. It will be converted to the String 'pid 30408 exit 1'
> ==> srv-1: Warning: Event['previous_value'] contains a Process::Status 
> value. It will be converted to the String 'pid 32434 exit 1'
> ==> srv-1: Error: Could not send report: Error 400 on SERVER: Bad Request: 
> The request body is invalid: Could not intern from json: Internal Error: 
> Puppet Context ':loaders' missing
> ....
> ==> srv-3: Warning: Event['previous_value'] contains a Process::Status 
> value. It will be converted to the String 'pid 28777 exit 1'
> ==> srv-3: Error: Could not send report: Error 400 on SERVER: Bad Request: 
> The request body is invalid: Could not intern from json: Internal Error: 
> Puppet Context ':loaders' missing
>
>
> What is also surprising is that it doesn't occur on all of the VM's, and 
> subsequently it doesn't appear if I re-run the provisioning with: vagrant 
> up --provision --provision-with puppet_server
>
> There was a suggestion that there could be some stale code around as the 
> image starts with puppet 3 pre-installed, but I've got the bootstrapping 
> scripts to purge the old packages and delete any files that could have been 
> placed under /var/lib/puppet and /etc/puppet
>
> bash code:
>
> package=puppet5-release-xenial.deb
> env https_proxy=$HTTPS_PROXY wget \
>     --quiet --continue -O /tmp/$package 
> https://apt.puppetlabs.com/$package
> dpkg -i /tmp/$package
> export DEBIAN_FRONTEND=noninteractive
> apt-get update
> apt-get purge --yes puppet hiera facter
> rm -rf /var/lib/puppet /etc/puppet
> apt-get install --yes --no-install-recommends puppet-agent=5.3.5-1xenial 
> ruby policykit-1
>
> Currently pinned to 5.3.5 because there was an issues with a subsequent 
> release and decided to just pin to the same version as the upgraded puppet 
> master was running.
>
> I've tried switching the clients to 5.5.8 and I get the same error, so 
> it's not solved by moving to the most recent version.
>
> Grep'ing through /var/lib/puppet hasn't been illuminating, didn't spot 
> anything when switching it to use debug, and neither has been inspecting 
> the puppet master log so I'm not sure where exactly to look?
>
> The quick fix is to disable reporting within the virtual environment, 
> which certainly solves the problem, but seems like the wrong approach.
>
> Any thoughts on how to debug this? What do I need to enable on the puppet 
> master to be able to capture report requests both good and bad so I can see 
> what it is that is being sent that gets rejected, and what should be sent?
>
> --
> Darragh Bailey
>

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/b70320c3-5dfa-4eb5-9c1d-7f5074f1bcf7%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to