def METHOD_NAME(is_gzip, api_v1, central_logstash_mock):
    record = standard_test_log_record() + b'\n'
    if is_gzip:
        send_record_post = gzip_bytes(deepcopy(record))
        headers = {'Content-Encoding': 'gzip'}
    else:
        send_record_post = deepcopy(record)
        headers = None
    target = f'{config.client.url}/v1/federation/logs/'
    with central_logstash_mock as server:
        ret = requests.post(target, data=send_record_post, headers=headers)
        # print(f'send request {send_record_post}')
        server.handle_request()
    assert ret.status_code == 200
    assert int(json.loads(ret.content)['filesize']) > 0
    assert len(central_logstash_mock.received_content) == 1
    log_received_json = json.loads(deepcopy(central_logstash_mock.received_content[0]))
    # print(f'log_received_json={log_received_json}')
    log_sent_json = json.loads(record)
    assert 'ip_address' not in log_sent_json
    assert 'ip_address' in log_received_json.keys()
    assert log_received_json['ip_address'] == 'testclient'
    log_received_json.pop('ip_address')
    assert json.dumps(log_sent_json, sort_keys=True) == json.dumps(log_received_json, sort_keys=True)