Tiếng AnhTiếng PhápTiếng Tây Ban Nha

Ad


Biểu tượng yêu thích OnWorks

dbpmda - Trực tuyến trên đám mây

Chạy dbpmda trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks trên Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS

Đây là lệnh dbpmda có thể được chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS

CHƯƠNG TRÌNH:

TÊN


dbpmda - trình gỡ lỗi cho PMDA Đồng thí điểm Hiệu suất

SYNOPSIS


dbpmda [-ei] [-n pmnsfile] [-q thời gian chờ] [-U tên truy nhập]

MÔ TẢ


dbpmda là giao diện tương tác cho các tương tác giữa Miền chỉ số hiệu suất
Đại lý (PMDA(3)) và Daemon Bộ thu thập Chỉ số Hiệu suất (chiềucd(1)). Điều này cho phép các PMDA
được đính kèm, khởi tạo và thực hiện để kiểm tra tính đúng đắn.

dbpmda tương tác nhắc người dùng về các lệnh, nhiều lệnh trong số đó mô phỏng Giao thức
Đơn vị dữ liệu (PDU) có thể được gửi bởi chiềucd(1) quy trình. Sau khi chạy dbpmda, nhập
lệnh giúp đỡ để có được danh sách các lệnh có sẵn. Phần ví dụ bên dưới
minh họa một phiên bằng cách sử dụng dbpmda để kiểm tra PMDA.

Để đơn giản hóa việc kiểm tra lặp lại một PMDA, tệp .dbpmdarc trong công việc hiện tại
thư mục có thể chứa một danh sách các lệnh sẽ được thực thi bởi dbpmda khi khởi động,
trước khi người dùng được nhắc nhập các lệnh khác một cách tương tác. Trong khi xử lý
.dbpmdarc tệp, chế độ tương tác và lặp lại lệnh được bật và sau đó đặt lại ở cuối
của .dbpmdarc tập tin (xem -i-e đối số dòng lệnh bên dưới).

Nếu hệ thống hỗ trợ đường dẫn(3) sau đó điều này sẽ được sử dụng để đọc lệnh khi đầu vào là
từ thiết bị tty, do đó, lịch sử và chỉnh sửa dòng lệnh có sẵn.

dbpmda chấp nhận các đối số dòng lệnh sau:

-e Echo đầu vào đến tiêu chuẩn. Điều này hữu ích khi đầu vào được chuyển hướng từ một tệp.

-i Mô phỏng hành vi tương tác và nhắc các lệnh mới, ngay cả khi đầu vào tiêu chuẩn là
không phải là một thiết bị tty.

-n pmnsfile
Thông thường dbpmda hoạt động trên Không gian Tên Chỉ số Hiệu suất được phân phối (PMNS),
tuy nhiên nếu -n tùy chọn được chỉ định một PMNS cục bộ thay thế được tải từ
hồ sơ pmnsfile.

-q thời gian chờ
Giao thức trao đổi phiên bản pmcd sang đại lý (mới trong PCP 2.0 - được giới thiệu để cung cấp
tương thích ngược) sử dụng thời gian chờ này để chỉ định thời gian dbpmda Nên chờ
trước khi giả định rằng không có phản hồi phiên bản nào đến từ một tác nhân. Nếu hết thời gian này
đạt được, đại lý được coi là một đại lý không hiểu PCP
Giao thức 2.0. Khoảng thời gian chờ mặc định là năm giây, nhưng -q tùy chọn
cho phép khoảng thời gian chờ thay thế (phải lớn hơn XNUMX) là
được chỉ định. Đơn vị của thời gian là giây.

-U tên truy nhập
Tài khoản người dùng để chạy dbpmda.

Vì không có ràng buộc về thời gian chờ trên PMDA khi sử dụng dbpmda (so với chiềucd(số 1)),
một trình gỡ lỗi khác như gdb(1) có thể được sử dụng trong quy trình PMDA khi nó đã được gắn vào
dbpmda.

THÍ DỤ


Dưới đây là một dbpmda phiên sử dụng đơn giản PMDA. MỘT .dbpmdarc tệp được sử dụng để thiết lập
cờ gỡ lỗi, mở PMDA và hiển thị trạng thái hiện tại của trình gỡ lỗi:

$ con mèo .dbpmdarc
gỡ lỗi libpmda
mở dso pmda_simple.so simple_init 253
tình trạng

Thời Gian dbpmda được chạy, các lệnh trong .dbpmdarc tệp được thực thi đầu tiên:

$dbpmda
.dbpmdarc> gỡ lỗi libpmda
.dbpmdarc> mở dso pmda_simple.so simple_init 253
[Thứ sáu ngày 19 tháng 10 19:55:XNUMX] dbpmda(11651) Gỡ lỗi: pmdaInit: PMDA đơn giản DSO: Số liệu 0.0.1(1) phù hợp với indom 253.0(0)
[Thứ sáu ngày 19 tháng 10 19:55:XNUMX] dbpmda(11651) Gỡ lỗi: pmdaInit: PMDA simple DSO: help file $ PCP_PMDAS_DIR / simple / help đã mở
[Thứ sáu ngày 19 tháng 10 19:55:XNUMX] dbpmda(11651) Thông tin: name = simple DSO
[Thứ sáu ngày 19 tháng 10 19:55:XNUMX] dbpmda(11651) Thông tin: domain = 253
[Thứ sáu ngày 19 tháng 10 19:55:XNUMX] dbpmda(11651) Thông tin: num metrics = 4
[Thứ sáu ngày 19 tháng 10 19:55:XNUMX] dbpmda(11651) Thông tin: num indom = 1
[Thứ sáu ngày 19 tháng 10 19:55:XNUMX] dbpmda(11651) Thông tin: bản đồ trực tiếp = 1
.dbpmdarc> trạng thái

Không gian tên: (mặc định)
PMDA: ./pmda_simple.so
Kết nối: dso
Phiên bản giao diện DSO: 2
Phiên bản PMDA PMAPI: 2
pmDebug: 32768 (libpmda)
Hẹn giờ: tắt
Getdesc: tắt

Trạng thái hồ sơ phiên bản Dump = BAO GỒM, 0 cấu hình

.dbpmdarc>

Để kiểm tra chỉ số và bộ mô tả phiên bản, giảm dầnví dụ lệnh có thể được
đã sử dụng. Các chỉ số có thể được xác định bằng tên hoặc sử dụng ký hiệu `` dấu chấm '' để
chỉ định miền, cụm và các trường mục của PMID. Miền phiên bản phải là
được xác định bằng cách sử dụng ký hiệu `` chấm '' để chỉ định miền và các trường nối tiếp. Cú pháp
đối với hầu hết các lệnh sẽ được hiển thị nếu lệnh được đưa ra mà không có bất kỳ đối số nào:

dbpmda> mô tả 253.0.0
PMID: 253.0.0
Loại dữ liệu: 32-bit không dấu int InDom: PM_INDOM_NULL 0xffffffff
Ngữ nghĩa: tức thì Đơn vị: không có
dbpmda> phiên bản
instance indom # [number | tên | "Tên" ]
dbpmda> phiên bản 253.0
chiềuInDom: 253.0
[0] inst: 0 name: "red"
[1] inst: 1 name: "green"
[2] inst: 2 name: "blue"

Để kiểm tra thành phần quan trọng nhất của PMDA, lấy, nó thường hữu ích để xác định
thời gian cần để PMDA phản hồi. Các bộ đếm thời gian có thể được bật trước khi đưa ra lấy:

dbpmda> hẹn giờ bật
dbpmda> tìm nạp simple.numfetch 253.0.1
PMID (các): 253.0.0 253.0.1
pmResult dump từ 0x100078e0 dấu thời gian: 0.000000 11: 00: 00.000 numpmid: 2
253.0.0 (simple.numfetch): numval: 1 valfmt: 0 vlist []:
giá trị 1 1.4012985e-45 0x1
253.0.1 (simple.color): numval: 3 valfmt: 0 vlist []:
giá trị inst [0 hoặc ???] 1 1 1.4012985e-45 0x1
giá trị inst [1 hoặc ???] 101 1.4153114e-43 0x65
giá trị inst [2 hoặc ???] 201 2.8166099e-43 0xc9
Hẹn giờ: 0.003921 giây
dbpmda> hẹn giờ tắt

Bản dịch số nguyên, dấu phẩy động và hex của các giá trị trong chiềuKết quả cấu trúc
được bán phá giá nếu getdesc được thiết lập để off (mặc định). Thiết lập getdesc đến on sẽ dẫn đến
chỉ các giá trị số nguyên được kết xuất trong lần tìm nạp ở trên khi bộ mô tả mô tả
số liệu của số nguyên không dấu 32 bit.

PMDA đơn giản cũng hỗ trợ hàng hoạt động có thể được kiểm tra với
lấy lệnh:

dbpmda> store simple.numfetch "42"
PMID: 253.0.0
Đang nhận mô tả ...
Nhận Cấu trúc Kết quả ...
253.0.0: 2 -> 42
dbpmda> tìm nạp simple.numfetch
PMID (các): 253.0.0
pmResult dump từ 0x100078e0 dấu thời gian: 0.000000 11: 00: 00.000 numpmid: 1
253.0.0 (simple.numfetch): numval: 1 valfmt: 0 vlist []:
giá trị 43

Đối số giá trị trong hàng lệnh phải là một chuỗi, được bao gồm trong
dấu nháy đơn (') hoặc dấu nháy kép (").

A Hồ sơ có thể được chỉ định cho từng miền phiên bản bao gồm tất cả, một số hoặc không
các trường hợp:

dbpmda> hồ sơ trợ giúp

hồ sơ indom # [tất cả | không ai ]
hồ sơ indom # [thêm | xóa] số

Đối với miền phiên bản được chỉ định, cấu hình có thể được thay đổi thành
bao gồm các trường hợp 'tất cả', không có trường hợp nào, thêm một trường hợp hoặc xóa
một ví dụ.

dbpmda> hồ sơ 253.0 không có
dbpmda> getdesc bật
dbpmda> tìm nạp 253.0.1
PMID (các): 253.0.1
pmResult dump từ 0x100078e0 dấu thời gian: 0.000000 11: 00: 00.000 numpmid: 1
253.0.1 (simple.color): Không có giá trị nào được trả về!
dbpmda> hồ sơ 253.0 thêm 2
dbpmda> tìm nạp 253.0.1
PMID (các): 253.0.1
pmResult dump từ 0x100078e0 dấu thời gian: 0.000000 11: 00: 00.000 numpmid: 1
253.0.1 (simple.color): numval: 1 valfmt: 0 vlist []:
giá trị 202
dbpmda> hồ sơ 253.0 thêm 0
dbpmda> tìm nạp 253.0.1
PMID (các): 253.0.1
pmResult dump từ 0x100078e0 dấu thời gian: 0.000000 11: 00: 00.000 numpmid: 1
253.0.1 (simple.color): numval: 2 valfmt: 0 vlist []:
inst [0 hoặc ???] giá trị 2
inst [2 hoặc ???] giá trị 203
dbpmda> trạng thái

PMDA = pmda_simple.so
Kết nối = dso
pmDebug = 32768 (libpmda)
Hẹn giờ = tắt

Trạng thái hồ sơ phiên bản Dump = BAO GỒM, 1 cấu hình
Cấu hình [0] indom = 1061158913 [253.0] state = EXCLUDE 2 phiên bản
Bản sao: [2] [0]
dbpmda> thoát

Sản phẩm đồng hồ đeo tay lệnh (cách sử dụng: đồng hồ đeo tay tên tập tin ) mở một cửa sổ xwsh theo sau
tệp nhật ký. Người dùng phải đóng cửa sổ này khi không cần nữa.

Sản phẩm chờ đợi lệnh tương đương với ngủ (1) và nhận một đối số số nguyên duy nhất.

Sự ra đời của các cây con động trong PMNS và PMDA_INTERFACE_4 trong libpcp_pmda
dẫn đến các lệnh bổ sung được hỗ trợ trong dbpmda để thực hiện động lực liên quan
Dịch vụ PMNS. Các ví dụ dưới đây dựa trên mẫu PMDA.

$dbpmda
dbpmda> open pipe / var / lib / pcp / pmdas / sample / pmdasample -d 29
Bắt đầu pmdasample PMDA: / var / lib / pcp / pmdas / sample / pmdasample -d 29
dbpmda> children sample.secret
Số liệu: sample.secret
foo không lá
thanh lá
dbpmda> traverse sample.secret.foo
Số liệu: sample.secret.foo
sample.secret.foo.bar.max.redirect
mẫu.secret.foo.one
mẫu.secret.foo.two
mẫu.secret.foo.bar.ba
mẫu.secret.foo.bar.four
sample.secret.foo.bar.grunt. five
sample.secret.foo.bar.grunt.snort.six
sample.secret.foo.bar.grunt.snort.huff.puff.seven
dbpmda> pmid sample.secret.foo.bar.four
Chỉ số: sample.secret.foo.bar.four
29.0.1004
dbpmda> tên 29.0.1006
PMID: 29.0.1006
sample.secret.foo.bar.grunt.snort.six

Sản phẩm trẻ em lệnh trả về thành phần tên tiếp theo cho tất cả các thành phần con trực tiếp của một
trong một cây con động của PMNS. Liên quan đi qua lệnh trả về toàn bộ
tên chỉ số cho tất cả các nút lá trong PMNS bên dưới nút không phải lá được chỉ định trong một động
cây con của PMNS.

Sản phẩm tênchiều các lệnh thực hiện việc dịch các tên chỉ số sang PMID (và phó
ngược lại) cho các chỉ số trong cây con động của PMNS.

Nếu các lệnh trẻ em, đi qua, chiều or tên được sử dụng với một PMDA được không sử dụng
PMDA_INTERFACE_4 hoặc có tên chỉ số hiệu suất không thuộc cây con động
PMNS thì PMDA sẽ trả về lỗi (PM_ERR_NAME hoặc PM_ERR_PMID)
để phản ánh thực tế là thao tác bị lỗi (bên ngoài cây con động của PMNS
nó là chiềucd(1) chứ không phải PMDA chịu trách nhiệm thực hiện các chức năng này).

Các cơ chế xác thực ứng dụng khách đã được tích hợp vào PMCS, cung cấp cho mỗi người dùng
(và mỗi kết nối) thông tin có sẵn cho PMDA. Một PMDA sử dụng
PMDA_INTERFACE_6 trở lên trong libpcp_pmda có thể sử dụng phương thức "thuộc tính" để
có được khả năng hiển thị vào các kết nối đã được xác thực này, với quyền truy cập vào thông tin bao gồm
định danh người dùng và nhóm, tên người dùng, v.v. Sự cần thiết phải thực hiện và gỡ lỗi này
giao diện đã dẫn đến một dbpmda chỉ huy. Ví dụ sau đây dựa trên mẫu
PMDA.

$dbpmda
dbpmda> open pipe pmdasample -D AUTH -l logfile
Bắt đầu pmdasample PMDA: pmdasample -D AUTH -l logfile
dbpmda> attr "tên người dùng" "tanya"
Thuộc tính: tên người dùng = tanya
Sự thành công
dbpmda> attr 11 "0"
Thuộc tính: userid = 0
Sự thành công
dbpmda>

Sản phẩm attr lệnh chuyển các thuộc tính kết nối (khóa PCP_ATTR) và các giá trị của chúng vào một PMDA
theo cách tương tự như PMCD đối với kết nối máy khách. dbpmda luôn luôn vượt qua một
định danh ngữ cảnh khách hàng bằng XNUMX và mặc dù không có kiểm tra tính hợp lệ trên các giá trị được thực hiện
chỉ các thuộc tính được công nhận mới có thể được thiết lập.

Trong ví dụ trên, THÁNG TÁM cờ gỡ lỗi được đặt cho PMDA, sử dụng cờ này trong
gọi lại thuộc tính và ghi lại từng thuộc tính và cặp giá trị được gửi đến nó trong tệp nhật ký.

Lưu ý rằng kiểm tra xác thực đã được thực hiện bởi PMCD vào thời điểm PMDA
được trình bày với các thuộc tính này, vì vậy PMDA không cần xác minh thêm.

THẬN TRỌNG


Một giá trị không thể được lưu trữ thành các chỉ số của loại PM_TYPE_AGGREGATE or PM_TYPE_EVENT.

dbpmda sử dụng ngã ba(2) giám đốc điều hành(2) để đính kèm vào các PMDA daemon. dbpmda không cố gắng
phát hiện sự kết thúc của quá trình PMDA daemon, do đó, một PMDA có thể thoát
bất ngờ mà không có bất kỳ thông báo nào. Tuy nhiên, mọi nỗ lực liên lạc tiếp theo với
PMDA sẽ dẫn đến lỗi cho biết rằng PMDA không còn phản hồi nữa.

Sử dụng dbpmda trực tuyến bằng các dịch vụ onworks.net


Máy chủ & Máy trạm miễn phí

Tải xuống ứng dụng Windows & Linux

Lệnh Linux

Ad