Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 7 additions & 6 deletions tabcmd/commands/auth/session.py
Original file line number Diff line number Diff line change
Expand Up @@ -262,15 +262,15 @@ def _read_existing_state(self):
self._read_from_json()

def _print_server_info(self):
self.logger.info("===== Server: {}".format(self.server_url))
self.logger.info(" Server: {}".format(self.server_url))
if self.proxy:
self.logger.info("===== Proxy: {}".format(self.proxy))
self.logger.info(" Proxy: {}".format(self.proxy))
if self.username:
self.logger.info("===== Username: {}".format(self.username))
self.logger.info(" Username: {}".format(self.username))
if self.certificate:
self.logger.info("===== Certificate: {}".format(self.certificate))
self.logger.info(" Certificate: {}".format(self.certificate))
else:
self.logger.info("===== Token Name: {}".format(self.token_name))
self.logger.info(" Token Name: {}".format(self.token_name))
site_display_name = self.site_name or "Default Site"
self.logger.info(_("dataconnections.classes.tableau_server_site") + ": {}".format(site_display_name))

Expand All @@ -281,7 +281,7 @@ def _validate_existing_signin(self):
if self.tableau_server and self.tableau_server.is_signed_in() and self.user_id:
server_user = self.tableau_server.users.get_by_id(self.user_id).name
if not self.username:
self.logger.info("Fetched user details from server")
self.logger.debug("Fetched user details from server")
self.username = server_user

return self.tableau_server
Expand All @@ -296,6 +296,7 @@ def _sign_in(self, tableau_auth) -> TSC.Server:
if not self.tableau_server:
Errors.exit_with_error(self.logger, "No server connection available for sign in")

self.logger.info(_("session.login"))
self.logger.debug(_("session.login") + (self.server_url or ""))
self.logger.debug(_("listsites.output").format("", self.username or self.token_name, self.site_name))
assert self.tableau_server is not None # Type hint for mypy
Expand Down
2 changes: 1 addition & 1 deletion tabcmd/commands/constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ def exit_with_error(logger, message: Optional[str] = None, exception: Optional[E
Errors.log_stack(logger)
elif exception:
if message:
logger.info(_("tabcmd.debug.error_message") + message)
logger.debug(_("tabcmd.debug.error_message") + message)
Errors.check_common_error_codes_and_explain(logger, exception)
else:
logger.info(_("tabcmd.debug.no_exception_or_message"))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -183,14 +183,14 @@ def save_to_data_file(logger, output, filename):
logger.info(_("httputils.found_attachment").format(filename))
with open(filename, "wb") as f:
f.writelines(output)
logger.info(_("export.success").format("", filename))
logger.info(_("export.success").format(filename, filename))

@staticmethod
def save_to_file(logger, output, filename):
logger.info(_("httputils.found_attachment").format(filename))
with open(filename, "wb") as f:
f.write(output)
logger.info(_("export.success").format("", filename))
logger.info(_("export.success").format(filename, filename))

@staticmethod
def get_custom_view_by_id(logger, server, custom_view_id) -> TSC.CustomViewItem:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ def run_command(cls, args):
else:

Errors.exit_with_error(logger, _("tabcmd.errors.parent.not.found"))
logger.info(_("delete.status").format(content_type, item_name or args.name))
logger.info(_("delete.status").format(content_type or "workbook", item_name or args.name))

error = None
if args.workbook or not content_type:
Expand Down
2 changes: 1 addition & 1 deletion tabcmd/commands/group/delete_group_command.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ def run_command(cls, args):
try:
logger.info(_("tabcmd.find.group").format(args.name))
group_id = Server.find_group(logger, server, args.name).id
logger.info(_("deletegroup.status").format(group_id))
logger.info(_("deletegroup.status").format(args.name))
server.groups.delete(group_id)
logger.info(_("common.output.succeeded"))
except Exception as e:
Expand Down
2 changes: 1 addition & 1 deletion tabcmd/commands/site/list_sites_command.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ def run_command(cls, args):
sites, pagination = server.sites.get()
logger.info(_("listsites.status").format(session.username))
for site in sites:
logger.info(_("listsites.output").format(" ", site.name, site.id))
logger.info(_("listsites.output").format(" ", site.name, site.content_url))
if args.get_extract_encryption_mode:
logger.info("EXTRACTENCRYPTION: {}".format(site.extract_encryption_mode))
except Exception as e:
Expand Down
2 changes: 1 addition & 1 deletion tabcmd/commands/user/create_site_users.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ def run_command(cls, args):
logger.debug(type(e))
number_of_errors += 1
logger.debug(number_of_errors)
error_list.append(e.__class__.__name__) # + ": " + e.__cause__ or "Unknown")
error_list.append(str(e))
logger.debug(error_list)
logger.info(_("session.monitorjob.percent_complete").format(100))
logger.info(_("importcsvsummary.line.processed").format(number_of_users_listed))
Expand Down
2 changes: 1 addition & 1 deletion tabcmd/commands/user/remove_users_command.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,6 @@ def run_command(cls, args):
session = Session()
server = session.create_session(args, logger)

logger.info(_("tabcmd.removeusers.server").format(args.users.name, args.name))
logger.info(_("tabcmd.removeusers.group").format(args.users.name, args.name))

UserCommand.act_on_users(logger, server, "removed", server.groups.remove_user, args)
5 changes: 4 additions & 1 deletion tabcmd/execution/logger_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,13 @@

path = os.path.dirname(os.path.abspath(__file__))

_CLASSIC_OUTPUT = os.environ.get("TABCMD_CLASSIC_OUTPUT", "").lower() in ("1", "true", "yes")
_INFO_FORMAT = "===== %(message)-30s" if _CLASSIC_OUTPUT else "%(message)-30s"

FORMATS = {
logging.ERROR: "%(asctime)s %(levelname)-5s:(%(name)-10s %(filename)-10s: %(lineno)d): %(message)-30s",
logging.WARN: "%(asctime)s %(levelname)-5s: (%(name)-10s %(filename)-10s: %(lineno)d): %(message)-30s",
logging.INFO: "%(message)-30s",
logging.INFO: _INFO_FORMAT,
logging.DEBUG: "%(asctime)s %(levelname)-5s: (%(name)-10s %(filename)-10s: %(lineno)d): %(message)-30s",
}

Expand Down
4 changes: 2 additions & 2 deletions tabcmd/execution/parent_parser.py
Original file line number Diff line number Diff line change
Expand Up @@ -198,5 +198,5 @@ def __init__(self, _parser: ParentParser):

def run_command(self, args):
logger = log(__name__, "info")
logger.info(f"{_('tabcmd.name')} {version}\n")
logger.info(self.parser.root.format_help())
print(f"{_('tabcmd.name')} {version}\n")
print(self.parser.root.format_help())
7 changes: 2 additions & 5 deletions tabcmd/execution/tabcmd_controller.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,11 +32,8 @@ def run(parser, user_input=None):
parser.print_help()
sys.exit(0)

if hasattr(namespace, "logging_level") and namespace.logging_level != logging.INFO:
print("logging:", namespace.logging_level)

logger = log(__name__, namespace.logging_level or logging.INFO)
logger.info("Tabcmd {}".format(version))
logger = log(__name__, namespace.logging_level or "INFO")
print("Tabcmd {}".format(version))
if hasattr(namespace, "password") or hasattr(namespace, "token_value"):
# don't print whole namespace because it has secrets
logger.debug(namespace.func)
Expand Down
3 changes: 2 additions & 1 deletion tabcmd/locales/en/tabcmd_messages_en.properties
Original file line number Diff line number Diff line change
Expand Up @@ -166,7 +166,7 @@ tabcmd.global.help.page_size=Specify the page size for query results
tabcmd.global.help.skip_connection_check=Skip connection check: do not validate the connection during publishing
tabcmd.howto=Run a specific command
tabcmd.launching=Launching tabcmd
tabcmd.listing.header====== Listing {0} content for user {1}...
tabcmd.listing.header= Listing {0} content for user {1}...
tabcmd.listing.label.id=ID: {}
tabcmd.listing.label.name=\tNAME: {}
tabcmd.listing.none=No content found
Expand Down Expand Up @@ -204,6 +204,7 @@ tabcmd.publish.options.tabbed.detailed=Publish with tabbed views enabled. Each s
tabcmd.refresh.options.bridge=Refresh datasource through Tableau Bridge
tabcmd.removeusers.help.group_name=The group to remove users from
tabcmd.removeusers.server=Removing users listed in {0} from the server...
tabcmd.removeusers.group=Removing users listed in {0} from the group ''{1}''...
tabcmd.report.error.user_csv.at_char=If a user name includes an @ character that represents anything other than a domain separator, you need to refer to the symbol using the hexadecimal format: \\0x40
tabcmd.report.error.user_csv.too_many_columns=The file contains {0} columns, but there are only {1} valid columns in a user import csv file
tabcmd.report.error.user.no_spaces_in_username=Username cannot contain spaces
Expand Down