Archiwum kategorii ‘Programowanie’

O (Net-)SNMP jeszcze trochę

niedziela, 18 Grudzień 2011

O SNMP pisałem już kilka razy. Tym razem notka o rozszerzeniu możliwości serwera (Net-SNMP) i prezentacji danych we własnych OID’ach.

Najprościej wykonać to można dodając do konfiguracji dyrektywę extend (kiedyś exec lub sh). Składnia wygląda tak:

extend [MIBOID] NAME PROG ARGS

A na przykładzie:

extend .1.3.6.1.4.1.31337 Test /root/scripts/test.sh testarg1

Przy okazji pozdrawiam firmę Union & Comstar, której PEN (Private Enterprise Number) pożyczyłem :-) (więcej…)

Zmiany w libwww-perl

sobota, 19 Listopad 2011

Jakiś czas temu (dokładnie to 27 marca) z biblioteki libwww-perl wydzielony został moduł LWP::Protocol::https. Jak można przeczytać w dokumentacji od wersji 6.01 biblioteki nie zaszły żadne zmiany w kodzie tego modułu.
W zeszłym tygodniu moduł został oznaczony jako stabilny w paczkach dla Gentoo (dev-perl/LWP-Protocol-https). Możliwa się stała jego aktualizacja i tym samym libwww-perl (dev-perl/libwww-perl). No i zaktualizowałem. I jednak coś się zmieniło.

SOAP::Lite, który korzysta z libwww-perl nagle zaczął zgłaszać błąd certyfikatu serwera (tzw. self-signed), z którego wywoływał żądanie:

500 Can't connect to server:443 (certificate verify failed) at /usr/lib/nagios/plugins/sms.pl line 7

(więcej…)

Dzień Programisty

wtorek, 13 Wrzesień 2011

W zeszłym roku chciałem coś napisać z okazji Dnia Programisty, ale skończyłem na tych dwóch odnośnikach (poniżej). W zasadzie nie opublikowałem tego, bo jakoś nie było czasu, ale zaśmieca mi Kokpit w WordPress (leży tez wpis z wakacji ’08), więc puszczę jak jest. W sumie to chyba aktualne i dziś.

Jeśli ktoś pyta skąd i po co, to odpowiedź poniżej (na nic bardziej kreatywnego mnie teraz nie stać):

mysql> SELECT DAYOFYEAR(CURDATE());
+----------------------+
| DAYOFYEAR(CURDATE()) |
+----------------------+
| 256 |
+----------------------+
1 row in set (0.09 sec)

Dodanie czasu w GPS Track

środa, 3 Sierpień 2011

W czerwcu w trakcie testowania aplikacji do śledzenia tras (via GPS) wspominałem o programie GPS Track. Aplikacja jest wystarczająca do zapisu samej ścieżki, ale niestety nie zapisuje znaczników czasu dla każdego punktu, więc jest bezużyteczna w przypadku korzystania z serwisu Endomondo (nie sprawdzałem jak zachowuje się Sports Tracker). Nie zapisuje też wysokości, tym samym tracimy rozszerzone informacje o treningu (Endomondo czy Google Earth sam sobie tego nie ‘dopisuje’). (więcej…)

PHPExcel

środa, 16 Marzec 2011

Czasem spadają na mnie jakieś drobne projekty, którymi wcale nie chcę się zajmować, bo okazuje się, że wymaga to głębszego poznania tematu i zajmuje więcej czasu niż przerwa śniadaniowa. Tym razem dostałem do wypełnienia arkusz kalkulacyjny MS Excel danymi przesłanymi przez klienta. Dostępna technologia – PHP.

Od razu zacząłem szukać gotowca i znalazłem! PHPExcel. Po krótkiej pracy z nim wiem, że nie jest to idealne narzędzie, ale może to wynikać z formatu pliku jaki obrabiałem i od tego jak i czym został wcześniej zapisany (wzór dostarczony z zewnątrz). Z dwóch wyglądających podobnie komórek po otwarciu i zapisaniu przez PHPExcel nagle jedna gubi formatowanie. Dziwne. Ale jako, że nie chciałem się zagłębiać, uznałem, że tak właśnie musi być.
Jako, że arkusze nie są skomplikowane, to przed samym zapisem robię ‘normalizację’ komórek, czyli ustawiam takie formatowanie, jakie jest w pliku źródłowym i wszystko działa.

Prócz wypełniania komórek odpowiednimi wartościami i zmianie formatowania nic więcej nie robiłem (a pewnie się da). Do takich celów, uważam, że projekt nadaje się wystarczająco.

flaker

niedziela, 27 Luty 2011

W październiku zeszłego roku stworzyłem prostego klienta Blip i twitter w C i Perl. Dziś, w końcu, udało mi się dotrzeć do API flakera (jak pisałem poprzednie programy, to długo tej strony nie było, a dziś jest pod adresem http://blog_backup.flaker.pl/api/index.html). W zasadzie to niewiele trzeba zmienić kod do twitter:

  • nazwa użytkownika to user->login (linia 20),
  • data i godzina wpisu – datetime (lub jak kto woli time czy nawet timestamp; linia 21),
  • no i oczywiście URL: http://api.flaker.pl/api/html:false/tag:tag/limit:limit (linia 63).

Pliku różnicowego nie zamieszczam, bo szanuję czytelników ;-)

Nie, nie mam konta w tym serwisie (a w tamtych tylko firmowe).

Klient twitter (C)

czwartek, 14 Październik 2010

Źródła klienta twitter poniżej. W zasadzie to tylko mała zmiana w stosunku do klienta Blip, bo różnią się formatem danych wejściowych (ale nadal to JSON) i nazwami pól (user_path -> from_user, body -> text). Tak jak wcześniej – kod nie jest optymalny. Mam tego świadomość, dlatego czekam na wszelkie uwagi.
W przypadku korzystania z tego wyszukiwania trzeba wiedzieć, że nie są dostępne wszystkie statusy, a jedynie te najnowsze. (więcej…)