def set_blob_service_properties(<EOL>self, logging=None, hour_metrics=None, minute_metrics=None,<EOL>cors=None, target_version=None, timeout=None):
request = HTTPRequest()<EOL>request.method = '<STR_LIT>'<EOL>request.host_locations = self._get_host_locations()<EOL>request.path = _get_path()<EOL>request.query = {<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>'<STR_LIT>': '<STR_LIT>',<EOL>'<STR_LIT>': _int_to_str(timeout),<EOL>}<EOL>request.body = _get_request_body(<EOL>_convert_service_properties_to_xml(logging, hour_metrics, minute_metrics, cors, target_version))<EOL>self._perform_request(request)<EOL>
Sets the properties of a storage account's Blob service, including
Azure Storage Analytics. If an element (ex Logging) is left as None, the 
existing settings on the service for that functionality are preserved.

:param Logging logging:
    Groups the Azure Analytics Logging settings.
:param Metrics hour_metrics:
    The hour metrics settings provide a summary of request 
    statistics grouped by API in hourly aggregates for blobs.
:param Metrics minute_metrics:
    The minute metrics settings provide request statistics 
    for each minute for blobs.
:param cors:
    You can include up to five CorsRule elements in the 
    list. If an empty list is specified, all CORS rules will be deleted, 
    and CORS will be disabled for the service.
:type cors: list(:class:`~azure.storage.common.models.CorsRule`)
:param string target_version:
    Indicates the default version to use for requests if an incoming 
    request's version is not specified. 
:param int timeout:
    The timeout parameter is expressed in seconds.