From e17edced2ece3a444e5734b5d1e387d18749a3ca Mon Sep 17 00:00:00 2001 From: Bugazelle Date: Sat, 13 Jul 2019 02:41:06 +0800 Subject: [PATCH] [Feat] Release to 0.1.8 --- requirements.txt | 1 - setup.py | 112 +++++++++++++++++++++++---- src/ExportCsvToInflux/__version__.py | 2 +- 3 files changed, 99 insertions(+), 16 deletions(-) delete mode 100644 requirements.txt diff --git a/requirements.txt b/requirements.txt deleted file mode 100644 index ca71599..0000000 --- a/requirements.txt +++ /dev/null @@ -1 +0,0 @@ -influxdb>=5.2.2 diff --git a/setup.py b/setup.py index 6d89af7..a3bb79e 100644 --- a/setup.py +++ b/setup.py @@ -5,23 +5,107 @@ CURDIR = os.path.dirname(os.path.abspath(__file__)) url = 'https://github.com/Bugazelle/export-csv-to-inlfux' -with open(os.path.join(CURDIR, 'requirements.txt')) as f: - REQUIRES = f.read().splitlines() - with open(os.path.join(CURDIR, 'src', 'ExportCsvToInflux', '__version__.py')) as f: VERSION = re.search("__version__ = '(.*)'", f.read()).group(1) download_url = '{0}/archive/v{1}.tar.gz'.format(url, VERSION) -this_directory = os.path.abspath(os.path.dirname(__file__)) -with open(os.path.join(this_directory, 'README.md')) as f: - long_description = f.read() - index = long_description.find('''```\n\n> **Note''') - new_long_description = long_description[:index].replace('```bash', '')\ - .replace('## Install', '**Install**')\ - .replace('## Features', '**Features**')\ - .replace('## Command Arguments', '**Command Arguments**') - suffix = '\nFor more info, please refer to the {0}'.format(url) - long_description = new_long_description + suffix +long_description = ''' +Export CSV To Influx +==================== + +**Export CSV To Influx**: Process CSV data, and export the data to influx db + +**Install** + +Use the pip to install the library. Then the binary **export_csv_to_influx** is ready. + +``` +pip install ExportCsvToInflux +``` + +**Features** + +1. Allow to use binary **export_csv_to_influx** to run exporter + +2. Allow to check dozens of csv files in a folder + +3. Auto convert csv data to int/float/string in Influx + +4. Allow to limit string length in Influx + +5. Allow to judge the csv has new data or not + +6. Allow to use the latest file modify time as time column + +7. Auto Create database if not exist + +8. Allow to drop database before inserting data + +9. Allow to drop measurements before inserting data + +10. Allow to match or filter the data by using string or regex. + +11. Allow to count, and generate count measurement + +**Command Arguments** + +You could use `export_csv_to_influx -h` to see the help guide. + + +-c, --csv, Input CSV file path, or the folder path. **Mandatory** + +-d, --delimiter, CSV delimiter. Default: ','. + +-lt, --lineterminator, CSV lineterminator. Default: '\n'. + +-s, --server, InfluxDB Server address. Default: localhost:8086. + +-u, --user, InfluxDB User name. + +-p, --password, InfluxDB Password. + +-db, --dbname, InfluxDB Database name. **Mandatory** + +-m, --measurement, Measurement name. **Mandatory** + +-t, --time_column, Timestamp column name. Default: timestamp. If no timestamp column, the timestamp is set to the last file modify time for whole csv rows. + +-tf, --time_format, Timestamp format. Default: '%Y-%m-%d %H:%M:%S' e.g.: 1970-01-01 00:00:00. + +-tz, --time_zone, Timezone of supplied data. Default: UTC. + +-fc, --field_columns, List of csv columns to use as fields, separated by comma. **Mandatory** + +-tc, --tag_columns, List of csv columns to use as tags, separated by comma. **Mandatory** + +-b, --batch_size, Batch size when inserting data to influx. Default: 500. + +-lslc, --limit_string_length_columns, Limit string length column. Default: None. + +-ls, --limit_length, Limit length. Default: 20. + +-dd, --drop_database, Drop database before inserting data. + +-dm, --drop_measurement, Drop measurement before inserting data. + +-mc, --match_columns, Match the data you want to get for certain columns, separated by comma. + +-mbs, --match_by_string, Match by string, separated by comma. + +-mbr, --match_by_regex, Match by regex, separated by comma. + +-fic, --filter_columns, Filter the data you want to filter for certain columns, separated by comma. + +-fibs, --filter_by_string, Filter by string, separated by comma. + +-fibr, --filter_by_regex, Filter by regex, separated by comma. + +-ecm, --enable_count_measurement, Enable count measurement. + +-fi, --force_insert_even_csv_no_update, Force insert data to influx, even csv no update. + +For more info, please refer to the https://github.com/Bugazelle/export-csv-to-inlfux +''' setup( name='ExportCsvToInflux', @@ -37,7 +121,7 @@ author='Bugazelle', author_email='463407426@qq.com', keywords=['python', 'csv', 'influx'], - install_requires=REQUIRES, + install_requires=['influxdb', ], download_url=download_url, url=url, classifiers=( diff --git a/src/ExportCsvToInflux/__version__.py b/src/ExportCsvToInflux/__version__.py index 2fb2513..c3bb296 100644 --- a/src/ExportCsvToInflux/__version__.py +++ b/src/ExportCsvToInflux/__version__.py @@ -1 +1 @@ -__version__ = '0.1.6' +__version__ = '0.1.8'