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 [email protected]. 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.
