[SERVER-35650] Free Monitoring initial 10-metric payload interval is 1 sec, not 60 sec Created: 18/Jun/18  Updated: 29/Oct/23  Resolved: 19/Jun/18

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: 4.0.0-rc5
Fix Version/s: 4.0.0-rc6, 4.1.1

Type: Bug Priority: Critical - P2
Reporter: Duncan Armstrong Assignee: Mark Benvenuto
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v4.0
Steps To Reproduce:

1. Start Free Monitoring service
2. Start rc5 mongod with Free Monitoring disabled
3. Wait a few seconds
4. Enable Free Monitoring

Free Monitoring logs and DB (metrics.metrics collection) will show the initial metrics received at 1-second interval.

Participants:

 Description   

The normal Free Monitoring metric interval is 60 seconds, and this is honored by mongod for the POST interval for ongoing metrics. However, when mongod first registers with Free Montoring, it sends a payload of up to 10 metrics that were previously buffered. The interval for these metrics seems to be 1 second, rather than 60 seconds.

You can see this in the timestamp suffix of the metric _id in the Free Monitoring DB:

> db.metrics.find({_id: /MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==.*/}, {_id: 1})
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338552006" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338553010" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338554008" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338555011" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338556009" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338557006" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338558006" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338559006" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338560006" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338561006" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338562006" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338622005" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338742010" }
{ "_id" : "MSA0YjdhMWZkOS01NzMyLTQ2NTctYWRjYy03YmRiYjZkMmUxZmIgTlp0OVdDcGh6YVo0bldXSGQ0MUJyeCtLWWxZSFYvVkFxNk9DQncwREwwUEp0WElPeklCdEErSlpPM0l3N2NValpxR0NGa1RyTlNsWkY3SFZPK1pia1E9PQ==-1529338802010" }

Notice that the first batch of timestamps are 1 second apart (although oddly it seems there are 11, not 10?), and then 60 seconds apart.



 Comments   
Comment by Githook User [ 19/Jun/18 ]

Author:

{'username': 'markbenvenuto', 'name': 'Mark Benvenuto', 'email': 'mark.benvenuto@mongodb.com'}

Message: SERVER-35650 Free Monitoring default interval should be 60 seconds

(cherry picked from commit fc4a3ebf568a3a17cff2a4676a8f4972134747db)
Branch: v4.0
https://github.com/mongodb/mongo/commit/272625228597da9c04aa9843b8128585da16390a

Comment by Githook User [ 19/Jun/18 ]

Author:

{'username': 'markbenvenuto', 'name': 'Mark Benvenuto', 'email': 'mark.benvenuto@mongodb.com'}

Message: SERVER-35650 Free Monitoring default interval should be 60 seconds
Branch: master
https://github.com/mongodb/mongo/commit/fc4a3ebf568a3a17cff2a4676a8f4972134747db

Comment by Andrew Davidson [ 18/Jun/18 ]

Being that this is on the critical path to the initial UX of the capability, it's very much a nice to have and helps ensure we're from the get-go optimizing the first-touch UI based on the long-term ingestion experience. If this can be delivered it would certainly be valuable. But if you've got too many balls in the air, we can definitely survive this waiting for 4.0.1 if necessary (the UI itself will have a lot of improvements in the weeks after release).

Comment by Gregory McKeon (Inactive) [ 18/Jun/18 ]

andrew.davidson Does this need to be in for GA?

Comment by Duncan Armstrong [ 18/Jun/18 ]

Yeah, understood that at a 1-minute interval the chances of actually filling up the 10-metric buffer aren't as high. But it definitely looks confusing having the first 10 datapoints on the chart 1 second apart, and then subsequent ones 10 secs apart, so please change to 60 secs. Thanks!

Comment by Mark Benvenuto [ 18/Jun/18 ]

The spec does say 1 minute. The 1 second was chosen since that is the minimal upload interval the server supports. It is a simple fix to make it 60 seconds.

Comment by Duncan Armstrong [ 18/Jun/18 ]

CC jonathan.balsano, john.morales

Generated at Thu Feb 08 04:40:31 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.