I’ll lead this whole thing off with “Sometimes Rob sucks at reading documentation.” Now that we’ve gotten that out of the way, let’s talk about what’s been causing some heartburn. Here’s what we were seeing when we went into Experience Profile:
And here’s what we see when we look at Experience Analytics:
For SEO, I’m going to paste the errors below. You know, to help others find this page if they’re googling a message.
There are errors.
The TopTenCampaignsByValue graph cannot be displayed due to a server error. Contact you system administrator.
The TopTenPatternsByValuePerVisit graph cannot be displayed due to a server error. Contact you system administrator.
The TopTenGoalsByConversions graph cannot be displayed due to a server error. Contact you system administrator.
The OnlineInteractions graph cannot be displayed due to a server error. Contact you system administrator.
The OnlineInteractionsByVisitsAndValuePerVisit graph cannot be displayed due to a server error. Contact you system administrator.
The ChannelsByVisits graph cannot be displayed due to a server error. Contact you system administrator.
There you go. So, I googled the heck out of that and the 403 response code. It looks like there’s something wrong with the certs on the reporting server. I mean, there’s a TON of resource out there to troubleshoot that. Here’s a few:
- https://sitecore.stackexchange.com/questions/31514/experience-profile-403-error
- https://sitecore.stackexchange.com/questions/19395/error-occurred-while-loading-experience-profile
- https://sitecore.stackexchange.com/questions/29873/experience-profile-not-displaying-anything
The only problem with that is that we’re running in k8s and there are no certs. Everything intra-infra is communicated on HTTP not HTTPS. That rules out cert issues, thankfully. But then…why are we getting a 403 Forbidden error? I was able to successfully ping the cortex reporting instances from CM, so it wasn’t a connectivity thing. I validated all my connection strings were correct as they were the ootb values.
After a day or so troubleshooting this, it was time to ping the folks at Sitecore Support. First time doing this with a k8s problem, but yolo, right?
I’ll sum up the support experience here with the following:
After uploading a support package, and a HAR file to show the traffic, support was quickly able to identify the root cause of these two pages being broken. Let’s do a quick survey on what you think was broken:
- Internal k8s routing was causing the pod communication to cross namespaces
- You really should use HTTPS to communicate within a cluster!
- The license file was expired
- The license file didn’t have XDB on it
- Our site definition had a space in the name, thereby breaking cookies and the request
If you picked….. #5, you were right. As awe-struck as I was that Sitecore quickly found the issue (it was like…an hour from creation to resolution), I’m equally frustrated that SXA would let you create sites with spaces in the name, despite it expressly being forbidden based on the docs. There should 100% be some validation on that field to prevent issues that are breaking like that. Either way, this is fixed now, and we’re moving on!