How to log/record system events or phone vibrations - Problem with Huawei Mate 20 Pro I have a Huawei Mate 20 Pro. Awesome phone, I love it. 
I live in Canada, and have the model LYA-L0C.

My phone is set to vibrate, so anytime I get a text or a FB message or messages from other apps my phone vibrates, and I check and I have a notification from xyz app. 
My phone has started to vibrate arbitrarily, for no apparent reason. It will vibrate, I will look and check my phone and there is no notification from any app. It will vibrate again and I will check and there is nothing there. I will check through my apps and there are no new messages or anything in any of my apps. Notifications are turned on for all apps, nothing turned off in the settings of the phone.
I don't know how to track down where this is coming from or what app is causing this.

Is there some kind of app I can install that will monitor and log system events like vibrations and log where it came from? Or does anyone have any other better solution to this problem? 

Thanks in advance for the thought and suggestions!!
The vibrator is not really logged that much but you might be able to get enough information to help. First,  The log output format is:

date time PID-TID/package priority/tag: message

Looking like:

12-10date 13:02:50.071time 1901-4229pid-tid/com.google.android.gmspackage Vpriority/AuthZentag: Handling delegate intent message

adb logcat -v long

Linux: adb logcat -v long &gt; ~/Desktop/logcat.txt

Windows: 

adb logcat -v long &gt; %userprofile%\desktop\logcat.txt

Vibrate is system thing so to get just system logs then this use this log command:

adb logcat logcat -b system

Linux: 

adb logcat logcat -b system &gt; ~/Desktop/logcat.txt

Windows:

adb logcat logcat -b system &gt; %userprofile%\desktop\logcat.txt

If within the logs you happen to see what package is responsible for vibrate and it gives its pid number write it down. Next use this command inserting the pid number where {pid} part. This will show only the output for that package.

adb logcat --pid={pid number}

Looking like:

adb logcat --pid=1000

If you know the package name you can get the pid number from this logcat command:

A
adb logcat pidof -s {package_name}

Looking like:

adb logcat pidof -s android.os.Vibrator

Just riffing but if you want to get fancy and try the previous two commands at once then through an adb shell throw this:

adb shell "logcat --pid=$(pidof -s {package_name})"

{With linux use a single quote instead of double quote.}

adb shell "logcat --pid=$(pidof -s android.os.Vibrator)"

You might be able to get some information from the battery stats with the command:

adb shell dumpsys batterystats --checkin

Look for vib for time and count.

There are apps that record the logs such as Matlog (no affiliation) that can record, highlight, and other options. However, I do not know if you narrow down the logs to get the details you are looking for.