Dears,
I would like to know which is a better approach to have Monitor Database Server Metrics using hardware monitoring feature in Database Agent or install Server Visibility on Database Server
The database monitoring agent would provide much more granular details not only about server hardware usage but about that usage specific to individual databases, procedures, queries, and granular comparison data.
Server Visbility would not provide that without adding several Performance Counters and even then you would never truly know what queries were causing you the most resource usage pain without a lot of time comparing with your database analysis toolset.
Edit: This is also something to consider from the standpoint of target audience. If you have a group that is monitoring overall server health they may not care about the specific metrics by query. In the event that you wanted to monitor overall server health the Server Visibility agent is better suited to present OS-critical metrics to evaluate health by. In the event you are concerned with Root Cause regarding the execution and operation of SQL, then database monitoring is more aptly suited to your needs.
It is my opinion however, that there are specific needs for each agent so I would advise if the budget and hardware allows for you to implement both where you are able.