Agent id is currently limited to 24 characters. This makes it hard at times to set it to a value provided by certain environment (such as when deploying onto kubernetes).
A few ways to increase this limit are as follows.
Still brain storming ideas so any suggestions are welcome.
related issues - #4638 #3504
@Xylus any updates on this? I'm afraid that soon pinpoin will lose its momentum to gain even more interests. Kubernetes deployments are now industry standard (including corporate) and pinpoint shall take this opportunity. If not probably other tool will take over this share.
Hi @dawidmalina
I'm currently working on accepting and storing UUIDs by encoding them into a 22 byte string.
This should cover your use case in k8s as you would be able to use the pod id as the agent id.
Additionally, since pod id doesn't seem to be very useful to users, we're thinking of collecting the pod name as well and exposing this in the web UI in case of k8s agents.
Please let me know if you have any concerns, or think there are other useful information we should collect for k8s agents.
Thanks.
Thanks for sharing this, I appreciate this. I think that pod id for uniqueness and pod name as display name is the best approach 馃憤 For now I can't find any other useful information that we should collect. Let's start with this and improve later :)
Please let me know if you need help with testing.
@dawidmalina Sounds good!
Is this issue fixed in branch 1.8.4?
@prajidi-blumeglobal No, it isn't fixed in 1.8.4, and I don't think it will be released for 1.8.x.
We're targetting this for our next non-1.8.x release.
Current plan is to take the 3rd route and keep backwards compatibility - using agent id as an alias, and assigning uuid to each agent id for use internally.
Should involve a lot of code changes to all 3 components so might take a bit to implement.
Any chance this will be addressed in version 2.0.0?
This feature is not included in 2.0.0
Any chance this will be addressed in version 2.1.0?
I stuck same issue and took a
It wasn't nice, but no choice.
Use the combination of the feature "auto agent id" #7382 and provide "agent name" #7787 might solve this. This is what i did, changed the premain class to do some initialization and customization stuff like setting pinpoint.agentName, pinpoint.applicationName automatically and then delegate to the original premain class to start.
Note: agent name support feature currently is in review and not merged, some changes might happen.
Most helpful comment
Hi @dawidmalina
I'm currently working on accepting and storing UUIDs by encoding them into a 22 byte string.
This should cover your use case in k8s as you would be able to use the pod id as the agent id.
Additionally, since pod id doesn't seem to be very useful to users, we're thinking of collecting the pod name as well and exposing this in the web UI in case of k8s agents.
Please let me know if you have any concerns, or think there are other useful information we should collect for k8s agents.
Thanks.