<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_server_build_info(self):
 """ issues a buildinfo command """

        if self.is_online():
            try:
                return self.get_mongo_client().server_info()
            except OperationFailure, ofe:
                log_exception(ofe)
                if "there are no users authenticated" in str(ofe):
                    # this is a pymongo 3.6.1 regression where the buildinfo command fails on non authenticated client
                    # fall-back to an authenticated client
                    admin_db = self.get_db("admin", no_auth=False)
                    return admin_db.command("buildinfo")
            except Exception, e:
                log_exception(e)

        return None