1{ stdenv, fetchFromGitHub, python, pythonPackages, sysstat, unzip, tornado
2, makeWrapper }:
3
4stdenv.mkDerivation rec {
5 version = "5.4.3";
6 name = "dd-agent-${version}";
7
8 src = fetchFromGitHub {
9 owner = "datadog";
10 repo = "dd-agent";
11 rev = version;
12 sha256 = "07cign0ydxf1h6xsyi3iviywlm9x6d6rcaz46f3wipby6mv1s5dc";
13 };
14
15 buildInputs = [
16 python
17 unzip
18 makeWrapper
19 pythonPackages.psycopg2
20 pythonPackages.psutil
21 pythonPackages.ntplib
22 pythonPackages.simplejson
23 pythonPackages.pyyaml
24 pythonPackages.requests
25 pythonPackages.pymongo
26 ];
27 propagatedBuildInputs = [ python tornado ];
28
29 buildCommand = ''
30 mkdir -p $out/bin
31 cp -R $src $out/agent
32 chmod u+w -R $out
33 PYTHONPATH=$out/agent:$PYTHONPATH
34 ln -s $out/agent/agent.py $out/bin/dd-agent
35 ln -s $out/agent/dogstatsd.py $out/bin/dogstatsd
36 ln -s $out/agent/ddagent.py $out/bin/dd-forwarder
37
38 wrapProgram $out/bin/dd-forwarder \
39 --prefix PYTHONPATH : $PYTHONPATH
40 wrapProgram $out/bin/dd-agent \
41 --prefix PYTHONPATH : $PYTHONPATH
42 wrapProgram $out/bin/dogstatsd \
43 --prefix PYTHONPATH : $PYTHONPATH
44
45 patchShebangs $out
46 '';
47
48 meta = {
49 description = "Event collector for the DataDog analysis service";
50 homepage = http://www.datadoghq.com;
51 license = stdenv.lib.licenses.bsd3;
52 platforms = stdenv.lib.platforms.all;
53 maintainers = with stdenv.lib.maintainers; [ thoughtpolice iElectric ];
54 };
55}