当前位置:网站首页>How do technicians send notifications?
How do technicians send notifications?
2022-06-26 09:58:00 【yuyanggo】
List of articles
tips: The documentation will continue to improve , Readers' comments are also welcome to supplement and perfect
Preface
This refers to the notification sent by the developer , For example, the following situations :
- The execution log of the scheduled task is sent to the developer for reference .
For example, the task of regularly sending notifications to certain people , You can send the number of people to the developer each time , When the number of people is abnormal , It can be perceived and handled in time . - Whether the data logic in the offline task patrol business is abnormal , The patrol inspection results are sent to the developer for reference .
- Various exceptions in the process of key business execution , Send to development
One 、 The most important principle - Effective communication
1. The information is valid
Of the notifications sent , Don't carry useless information .
If a notice you won't read at all , Then don't send .
2. People can handle
The amount of information a person can process is limited , therefore :
- The amount of information in a single notice cannot exceed the processing capacity of the person .
For example, send all exceptions during task execution to developers , So many exceptions , Developers can see it 、 Can you handle it ? If not , Then the part of the information that cannot be processed is invalid information . - Notification frequency should not be too high
This is a common problem of email notification in large companies . I like to send emails , As soon as you open your mailbox, there are hundreds of emails , It's all done , There's nothing else to do today , So I can only choose to ignore .
3. Confirm delivery
Make sure that after the notification is sent , Relevant users will receive and view .
For example, some companies , I like sending emails without restraint , Everyone opens his mailbox every day with hundreds of emails , People are not looking at email very much . Then if the notification is sent by mail , In fact, it's no different from "no way" .
Two 、 Notification content elements
1. Time
- Each record in the notification , You need to add a time prefix
In this way, when you have questions about the contents of the notice , It can accurately locate the specific time of occurrence , And query relevant logs in which time period 、 Monitoring, etc . - Business logic execution time
Monitoring notifications for complete business logic , For example, scheduled tasks 、 Interface implementation, etc , You need to know how long it takes for the entire logic to complete , And the execution time of each internal sub logic module ( For example, how much time does the third-party interface call take ).
2. Macro index statistics and specific information sampling are combined
The statistics of macro indicators is to control the overall implementation of tasks .
Specific information sampling , When we want to verify and troubleshoot , Unable to process all log records , But we can't ignore it , So take a sample , Verify and check the sampling records .
3、 ... and 、 Other considerations
1. Send a copy to yourself , Confirm that the notification logic is executing
No matter what the notice is , Whether it's successful or not , It is better to send a copy to yourself , The main purpose is to confirm that the notification logic is working properly , And the contents of the notice are correct .
If the notification frequency is high , In the logic of sending a notice to yourself , Add a frequency limit .
Four 、 Best practices
1. Timing task : to 100w Users send private messages
Notice template :
[2021-12-10 01:54:56] Timing task - Private letter notification sending - Start
Total number of users to send :1,000,000
success :50,000
Failure :50,000
Send the successful user Id sampling :[1,2,3,4,5]
Abnormal sampling :[" user (6) Invalid ", " user (7) Cannot receive private messages ", " Private message interface call exception :null"]
[2021-12-10 01:54:56] end
Element analysis :
- Start and end time
- Macro index statistics : The conclusion that we are most concerned about
- Data sampling :
- Send sample successfully : We can go through the process to verify whether the user has actually sent successfully , To test logical correctness .
- Send failed exception sampling : Look at the sampling information , To fix specific exceptions
- Format large numbers , Easier to read
Macro index data , Use the three digit separated formatting method , It is convenient to view the order of magnitude of specific values more quickly . If it is an indicator of more than one billion , At first sight , How many 0 It's just a hassle , I have to worry about the wrong number .
边栏推荐
- Logview Pro can be used if the log is too large
- Software testing - how to select the appropriate orthogonal table
- install opencv-contrib-dev to use aruco code
- online trajectory generation
- 2021-11-29 quintic polynomial of trajectory planning
- How to find and install the dependent libraries of Debian system
- TensorFlow动态分配显存
- Daily-used English phrases
- Speed test of adding, deleting, modifying and querying 5million pieces of data in a single MySQL table
- Cento7.7 elk installation simple record
猜你喜欢

微软 Edge 浏览器 IE 模式标签页出现卡死情况,已通过回滚更新修复

Go learning notes (83) - code specification and common development skills

Redis 新手入门

Configuration internationale

Redis notes (12) - single thread architecture (non blocking IO, multiplexing) and multiple asynchronous threads

logback

Solution to network request crash in retrofit2.8.1

Force buckle ----- remove the maximum and minimum values from the array

DAY 3 数组,前置后置,字符空间,关键词和地址指针

install opencv-contrib-dev to use aruco code
随机推荐
LeetCode 958. Completeness checking of binary tree
Flink入门——单词统计
The basis of C language grammar -- function nesting, Fibonacci sum of recursive applet and factorial
Control setting layout in linear layout_ Gravity doesn't work?
LeetCode 0710.黑名单中的随机数 - 预处理实现O(1)取值
WGCLOUD的web ssh服务端口是多少
Install new version cmake & swig & tinyspline
Custom interceptor
c语言语法基础之——函数定义学习
install realsense2: The following packages have unmet dependencies: libgtk-3-dev
This new change of go 1.16 needs to be adapted: the changes of go get and go install
Differences between JVM, Dalvik and art
Getting started with Flink - word statistics
异常记录-23
SQL advanced tutorial
How about the security of flush stock trading software? How to open an account in flush
Leetcode basic calculator 224 227. follow up 394
Automated testing -- Introduction and example of pytest framework
Extracting public fragments from thymeleaf
Test instructions - common interface protocol analysis