spring-actuator.el
author Oleksandr Gavenko <gavenkoa@gmail.com>
Wed, 22 Feb 2017 11:58:15 +0200
changeset 1491 4a9d4d14b87d
parent 1487 d22fade5ae5c
child 1506 4f24c53e6e38
permissions -rw-r--r--
Fix: delete extra parent.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1483
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     1
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     2
(defvar my/spring-actuator-server-history nil)
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     3
(defvar my/spring-actuator-last-server "http://localhost:8080")
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     4
(defvar my/spring-actuator-path-history nil)
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     5
(defvar my/spring-actuator-path-completion
1485
ba6632e1f2f8 Remove POST command. Add useful report.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1484
diff changeset
     6
  '("actuator" "auditevents" "autoconfig" "beans" "configprops" "dump" "env" "features" "flyway" "health" "heapdump"
1491
4a9d4d14b87d Fix: delete extra parent.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1487
diff changeset
     7
    "info" "jolokia" "liquibase" "logfile" "loggers" "mappings" "metrics" "trace"))
1483
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     8
1484
8fe1eaf66e94 Allow autoload. Move cursor to the beginning of buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1483
diff changeset
     9
;;;###autoload
1483
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    10
(defun my/spring-actuator (server path)
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    11
  (interactive (list (read-string "Server: " my/spring-actuator-last-server 'my/spring-actuator-server-history)
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    12
                     (completing-read "Path: " my/spring-actuator-path-completion nil nil "" 'my/spring-actuator-path-history)))
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    13
  (setq my/spring-actuator-last-server server)
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    14
  (let ( (bufname (format "actuator: %s" path)) )
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    15
    (when (get-buffer bufname)
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    16
      (kill-buffer bufname))
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    17
    (switch-to-buffer (url-retrieve-synchronously (format "%s/%s" server path)))
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    18
    (rename-buffer bufname)
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    19
    (goto-char (point-min))
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    20
    (re-search-forward "^$" nil 'move)
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    21
    (forward-char)
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    22
    (delete-region (point-min) (point))
a25f209ebf15 Library to access Spring Actuator endpoints.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    23
    (json-pretty-print-buffer)
1484
8fe1eaf66e94 Allow autoload. Move cursor to the beginning of buffer.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1483
diff changeset
    24
    (goto-char (point-min))
1487
d22fade5ae5c Detect if json-mode available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1485
diff changeset
    25
    (if (fboundp 'json-mode)
d22fade5ae5c Detect if json-mode available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1485
diff changeset
    26
        (json-mode)
d22fade5ae5c Detect if json-mode available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1485
diff changeset
    27
      (js-mode))
d22fade5ae5c Detect if json-mode available.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1485
diff changeset
    28
    (setq-local js-indent-level 2)))