Ultimate(IMO) F5 “tmctl” Starter Guide

While doing some troubleshooting with F5 TAC we were using “tmctl” command, so I googled looking for a good guide on syntax and some command examples. After looking through some posts and knowledge base articles I decided to just put one together using information from the F5 and an AI , so now others will have it if they need it. Enjoy!

The F5 TMCTL (Traffic Management Command Line Tool) is an essential command-line interface tool used for managing and troubleshooting F5 BIG-IP systems, which are widely used for application delivery and network security. TMCTL provides administrators with a powerful means of interacting with the BIG-IP system’s internal tables, offering insights and control that go beyond what is available through the standard configuration utility or TMSH (Traffic Management Shell).

Key Features and Uses of TMCTL

Direct Access to Internal Tables: TMCTL allows administrators to directly access and manipulate various internal tables of the BIG-IP system. These tables contain detailed information about system configuration and operation, including virtual servers, pools, pool members, and more.

Troubleshooting and System Inspection: With TMCTL, administrators can delve deep into the system to troubleshoot issues, monitor performance, and gather detailed information about the state of various components. This can be crucial in diagnosing complex problems.

Advanced Configuration and Management: While TMSH and the GUI are used for standard configuration tasks, TMCTL can perform more advanced and specific management tasks, especially useful for custom scripting and automation.

Flexibility in Data Handling: TMCTL offers various options to filter, sort, and display data. This flexibility is invaluable for parsing large amounts of information and extracting relevant data quickly.

Scripting and Automation: The command-line nature of TMCTL makes it well-suited for scripting and automation. Administrators can incorporate TMCTL commands into scripts to automate repetitive tasks or integrate with other system management tools.

tmctl -a = List all tmctl options

usage: (null) [OPTIONS] [TABLE [COL=VALUE]…]

Inspect and manipulate statistics subsystem.

Supported options:

   -a, –all            Display all tables.

   -A, –nolazy         Don’t lazily load metadata.  Load all on open.

   -b, –base=DIR       Set segment directory base path.

   -c, –csv            Output in CSV format.

   -C, –columns        Describe the table columns.

   -d, –dir=DIR        Subscribe to specific directory.

   -D, –snapshots=DIR  Subscribe to specific snapshots directory.

   -e, –eval=EXPR      Evaluate expression.

   -f, –file=PATH      Inspect specific segment file.

   -g, –dump           Dump the internal state (-gg dumps addresses).

   -G, –guest=DIR      Synonym for –base=/shared/vmdisks/stats/GUEST.

   -h, –help           Display this text.

   -H, –hash           Display the hash index. Requires -f.

   -i, –internal       Include internal tables.

   -I, –intermediate   Ignore intermediate key columns during merge.

   -k, –group=COL,COL  Group by selected columns, comma separated.

   -K, –sortby=COL,COL Sort by selected columns, comma separated.

   -l, –locale         Format using system locale.

   -L, –limit=NUM      Limit the number of rows to display to NUM.

   -m, –merge=PATH     Merge subscribed segments into one segment file.

   -n, –number         Count the number of selected rows.

   -o, –only           Only display internal tables.

   -O, –order          Reverse the sort order to descending.

   -p, –performance    Measure query performance.

   -P, –pivot          Pivot display as property list.

   -q, –quiet          Don’t display headers.

   -r, –rollup         Merge all selected rows, ignoring keys.

   -R, –rate=NUM       Limit snapshots to those at NUM seconds.

   -s, –select=COL,COL Display only selected columns, comma separated.

                        Append COL with /x to format in hexadecimal.

   -S, –sort           Sort rows within each table by their keys.

   -t, –time=NUM       Maximum seconds to allow a query to respond.

   -T, –category=NAME  Limit snapshots to tables in NAME category.

   -V, –verify         Verify the file is a valid segment. Requires -f.

   -w, –wrap=NUM       Wrap output at NUM characters.

   -W, –write          Write values to a row in a table.

   -x, –extract=DIR    Extract segments into directory.

   -X, –export=PATH    Export tables to file.

   -Y, –import=PATH    Import tables from file.

   -Z, –zap            Remove a row created using tmctl.

Commands:

cpu_info_stat

=============

host_info_stat

==============

interface_stat

==============

merge_stats

===========

merge_update_stats

==================

plane_cpu_stat

==============

plane_proc_stat

===============

proc_stat

=========

system_cpu_info_stat

====================

tmm_stat

========

virtual_server_stat

===================

access_acct_radius_stat

=======================

access_gen_stat

===============

agent_proxy_select_stat

=======================

agent_resource_assign_stat

==========================

agent_sso_configuration_select_stat

===================================

antserver_stat

==============

apm_sso_stat

============

apmd_stat

=========

app_cloud_security_service_stat

===============================

arp_stat

========

avr_plugin_stats

================

bbr_proxy_stat

==============

bdos_udp_dns_parser

===================

bigd_stat

=========

bptdbg_cnt

==========

bundle_mgr_stat

===============

bwc_measure_stat

================

category_lookup_stat

====================

cec_tables

==========

clone_stats

===========

compress

========

crypto_codec_status

===================

crypto_cpu

==========

crypto_hybrid

=============

debug_dropredirect_stats

========================

dht_stat

========

disk_info_stat

==============

disk_latency_stat

=================

dns_limiter_stat

================

dns_rapid_response_global

=========================

dns_resolver_derived_stat

=========================

dns_resolver_stat

=================

dnsexpress_zxfrd_stat

=====================

dnssec_stat

===========

dos_neuron_stat

===============

dos_spva_stat

=============

dos_vlan_set_stat

=================

dosl7_hudfilter_stats

=====================

dpi_stats

=========

dynad_stats

===========

ecm_connections_stat

====================

epva_connstat

=============

epva_hwvipstat

==============

epva_ignoredstat

================

epva_prioritystat

=================

epva_tablestat

==============

flow_eviction_policy_stat

=========================

fpm_plugin_stats

================

fw_current_state_stat

=====================

fw_fqdn_stat

============

fw_logthrottle_stat

===================

fw_nat_trans_stat

=================

fw_sendtovirtual_stats

======================

global_access_stat

==================

global_oauth_stat

=================

gtm_global_stat

===============

ha_stat

=======

http_psm_stats

==============

icmp6_stat

==========

icmp_stat

=========

ifc_stats

=========

imap_fsm_stat

=============

imap_parse_stat

===============

ip6_stat

========

ip_stat

=======

ipfix_irules_stats

==================

ipsec_cmp_stat

==============

ipsec_data_stat

===============

ipsec_esp_stat

==============

ipsec_ipcomp_deflate

====================

ipsec_logs

==========

isakmp_stat

===========

isession_iclient

================

l7check_stat

============

lcdwarn_table

=============

log_stat

========

lsn_global_stat

===============

lucenedb_plugin

===============

mcp_request_stat

================

mcp_transaction_stat

====================

memory_stat

===========

memory_usage_stat

=================

monitor_instance_stat

=====================

monitor_stat

============

mp_tcp_stat

===========

ndp_stat

========

neighbor_stat

=============

oauthdb_stat

============

offbox_apis_stat

================

offbox_connections_stat

=======================

packet_filter_rule_stat

=======================

page_stats

==========

peer_hb_stat

============

pem_actions_stat

================

pem_dtos_stat

=============

pem_global_stat

===============

pem_hsl_stat

============

pem_hudnode_opt_stat

====================

pem_multiple_ip_stat

====================

pem_persistence_stats

=====================

pem_radius_stat

===============

pem_rancon_stat

===============

pem_sessions_stat

=================

pem_tethering_stat

==================

perrequest_clinfo_stat

======================

perrequest_policy_stat

======================

pfkey_ike_event_stat

====================

pfkey_ike_msg_stat

==================

policy_stat

===========

pool_member_stat

================

pool_stat

=========

pop3_parse_stat

===============

proc_pid_stat

=============

profile_access_stat

===================

profile_ap_ai_stat

==================

profile_api_protection_stat

===========================

profile_apm_ivs_stat

====================

profile_auth_stat

=================

profile_bigproto_stat

=====================

profile_clientldap_stat

=======================

profile_clientssl_stat

======================

profile_connectivity_stat

=========================

profile_connector_stat

======================

profile_connpool_stat

=====================

profile_csd_stat

================

profile_device_id_stat

======================

profile_dhcpv4_stat

===================

profile_dhcpv6_stat

===================

profile_diameter_endpoint_stat

==============================

profile_diameter_stat

=====================

profile_diameterrouter_stat

===========================

profile_diametersession_stat

============================

profile_dns_stat

================

profile_euie_stat

=================

profile_exchange_stat

=====================

profile_fasthttp_stat

=====================

profile_fix_stat

================

profile_ftp_stat

================

profile_genericmsg_stat

=======================

profile_georedundancy_stat

==========================

profile_gtp_stat

================

profile_html_stat

=================

profile_http2_stat

==================

profile_http3_stat

==================

profile_http_proxy_connect_stat

===============================

profile_http_stat

=================

profile_httpcompression_stat

============================

profile_httprouter_stat

=======================

profile_ibd_stat

================

profile_icap_stat

=================

profile_ilx_stat

================

profile_imap_stat

=================

profile_ipother_stat

====================

profile_ipsecalg_stat

=====================

profile_lw4o6_stat

==================

profile_map_stat

================

profile_mapt_stat

=================

profile_messagerouter_stat

==========================

profile_mqtt_stat

=================

profile_mqttrouter_stat

=======================

profile_mqttsession_stat

========================

profile_mr_ratelimit_stat

=========================

profile_netflow_stat

====================

profile_oauth_stat

==================

profile_ocsp_responder_stat

===========================

profile_pingaccess_stat

=======================

profile_pop3_stat

=================

profile_ppp_stat

================

profile_pptp_stat

=================

profile_pua_ldap_stat

=====================

profile_pua_radius_stat

=======================

profile_qoe_stat

================

profile_quic_stat

=================

profile_radius_aaa_stat

=======================

profile_radius_stat

===================

profile_remotedesktop_stat

==========================

profile_requestadapt_stat

=========================

profile_responseadapt_stat

==========================

profile_rewrite_stat

====================

profile_rtsp_stat

=================

profile_sctp_stat

=================

profile_serverldap_stat

=======================

profile_serverssl_stat

======================

profile_service_stat

====================

profile_sipp_stat

=================

profile_siprouter_stat

======================

profile_sipsession_stat

=======================

profile_smtps_stat

==================

profile_socks_stat

==================

profile_splitsessionclient_stat

===============================

profile_splitsessionserver_stat

===============================

profile_statistics_stat

=======================

profile_stream_stat

===================

profile_tcp_stat

================

profile_tdr_stat

================

profile_tftp_stat

=================

profile_udp_stat

================

profile_webacceleration_jail_stat

=================================

profile_webacceleration_stat

============================

profile_websocket_stat

======================

profile_xml_stat

================

protocol_inspection_attr_sip_call_logs

======================================

protocol_inspection_stats

=========================

pva_stat

========

ra_agent_stat

=============

rc_cache_stat

=============

rcp_conn_stat

=============

rebal

=====

route6_stat

===========

route_domain_stat

=================

route_stat

==========

rst_cause_stat

==============

rule_stat

=========

sb_stats

========

selfip_stat

===========

session_db_stat

===============

session_packtag_stat

====================

smtps_parse_stat

================

sod_tg_conn_stat

================

sod_tg_msg_stat

===============

softpva_stat

============

sso_config_stat

===============

sso_plugin_stats

================

string_cache_stat

=================

syscalld_cmd_stat

=================

syscalld_queue_stat

===================

system_traffic_stat

===================

tap_profile_stat

================

tcpdump_dpt

===========

tcpdump_stat

============

tmm_aes_stat

============

tmm_plugin

==========

urldb_stat

==========

virtual_server_cpu_stat

=======================

vmem_kstat

==========

wam_css_stat

============

wam_html_stat

=============

wam_js_stat

===========

wam_m3u8_stat

=============

wap_conn_stat

=============

xbuf_stats

==========

gtm_datacenter

==============

gtm_pool

========

gtm_server

==========

gtm_wideip

==========

ltm_nat

=======

ltm_node

========

ltm_pool

========

ltm_pool_member

===============

ltm_rule

========

ltm_snat

========

ltm_snat_translation

====================

ltm_snatpool

============

ltm_virtual

===========

ltm_virtual_address

===================

net_interface

=============

net_vlan

========

sys_application_service

=======================

If you would like to add any content to this to improve it please send it to me and I will add you name as a contributor.

Leave a Reply

Discover more from Danger Will Robbins Danger

Subscribe now to keep reading and get access to the full archive.

Continue reading