-
Notifications
You must be signed in to change notification settings - Fork 1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] Importing a large amount of monitoring config occur poor experience and may trigger a long database transaction #3003
Comments
Hello, I have a question. If each configuration is imported as a separate transaction, how can we ensure the integrity of the imported data? In other words, if one configuration import fails, how should it be handled? |
I think failure can be ignored may be more reasonable ;or adding a progress bar or a place to check the progress will be much better for batch import. |
The problem may cause by the detect, the will detect all monitors when import.
+1, adding a progress bar or a place to check the progress will be much better for batch import. |
OK,If possible, assign this task to me to optimize. |
hi welcome, what the idea to solve it, remove detect or use asynchronous detection? It seems that the real-time status of monitoring will change according to this detect |
Yes, the current process involves performing a detect before creation to obtain the accurate monitoring availability status. |
I think it is essential to correctly display availability after creation; otherwise, it may lead to confusion among users, similar issues were frequently raised in the WeChat feedback group prior to the overhaul of this feature. |
yes +1 |
My idea is to maintain the synchronization detection;and add 「user task center」 on the page. When batch imported tasks are executing, the task send some message about process and result to notify 「user task center」 , then 「user task center」 update task status . This way, users can obtain task progress and final results even user already leave the import page |
hi, if user operate in monitors center, but he turn in the「user task center」to see the result, I feel this is a bit of a jump. How about the |
Is there an existing issue for this?
Current Behavior
I imported 500 monitoring configuration files, it took 8 minutes.
Expected Behavior
During this time, I didn’t see any data increase on the monitoring center list page, which made me suspect if the process was stuck.
Steps To Reproduce
1.Enter 'monitors' from left menu
2.Select 'Import Monitor'
3.Import a large monitor config file
4.Waiting long time,no data increase
Environment
Debug logs
No response
Anything else?
I found that MonitorServiceImpl.java used @transactional at the class level,
@Transactional(rollbackFor = Exception.class) public class MonitorServiceImpl implements MonitorService
This occur a poor experience and was unnecessary.
If each configuration import was treated as a separate transaction, I would have seen the data being imported continuously, making me feel that the process was working.
The same issue might also at AlertDefineServiceImpl.java.
The text was updated successfully, but these errors were encountered: